Hallo alle zusammen.
ich suche nach einer Möglichtkeit meine Junkers-Therme mit meiner
Hausautomatisierung zu verbinden um Betreibsdaten mitzuloggen.
Hat vielleicht jemand etwas ähnliches am laufen?
Auf der Seite http://jucan.reissberg.com/index.htm wurde mal eine
anbindung über den CAN-Bus der Regelung angefangen, leider ist der Autor
mittlerweile verstorben.
Im Forum hier gab es auch mal einen Thread wo jemand ähnliches vor
hatte:
Beitrag "Ceracontrol/Heatronic Protokoll"
Vielleicht kann mir jemand weiterhelfen.
Danke und Gruß,
Thorsten Weiss
Hallo allerseits,
bei unserer Heizungsanlage möchte ich nicht nur die Daten auf dem CAN
Bus loggen, sondern auch einige Optimierungen der Steuerung einbringen.
In unserem EFH wurde eine Junkers ZBS 22/120 MRA21 mit
witterungsgeführter Regelung installiert.
Prinzipiell darf an der Regelung des Heizkessels nicht eingegriffen
werden, aber meiner Auffassung nach ist noch Optimierungspotenzial
vorhanden. Dieses Potenzial liegt in der Steuerung der Heizungsanlage,
denn die Parametrierung der Regelung kann weitreichend über die
Servicefunktionen der Heatronic vorgenommen werden.
Damit dieses Potential genutzt werden kann, reicht es nicht aus, die CAN
Nachrichten zu protokollieren und decodieren, sondern es müssen auch CAN
Nachrichten auf den Bus versandt werden. Mit den Nachrichtenversandt
können entsprechende Busteilnehmer gesteuert werden.
Zur Realisierung könnte ich mir einen Mikrocontroller mit Userinterface
vorstellen, welcher auch als Datenlogger fungiert. Der Datenlogger
könnte mittels CF-Card aufzeichnen, damit nicht kontinuierlich ein PC
für die Datenerfassung eingeschaltet sein muss. Eine Anbindung ans
Internet zur Parametrierung des Mikrocontrollers möchte ich aus
Sicherheitsgründen nicht forcieren, jedoch wären Benachrichtigungen
bestimmter Ereignisse mittels SMTP-Client (Email) denkbar.
Damit hier eine Grundeinschätzung der Thematik getroffen werden kann,
benötigt man einen Mitschnitt der Kommunikation auf den CAN Bus. Zuvor
gilt es jedoch zu klären, ob eine Adaption (BUS-Modul an der Heatronic)
benötigz wird. Aus den bisherigen Recherchen und den somit
zusammengetragen Informationen, konnte keine CAN Schnittstelle an der
Heatronic ermittelt werden. Vielmehr verweisst der Hersteller für die
CAN-Bus Kommunikation auf die Busmodule BM1 und BM2.
Haben Sie diesbezüglich schon andere Erkenntnisse gesammelt?
Gruss
Besi
Hallo nocheinmal,
habe mir die Mühe gemacht, ein Busmodul für die Heatronic zu entwickeln,
dieses an die Anlage adaptiert und mittels einen CAN-Analyser die
Nachrichten auf den CAN-BUS über einige Tage aufgezeichnet. Mittels der
Aufzeichnungen konnten einzelne Sequenzen analysiert werden und Dank des
CAN- Analysers wieder auf den BUS geschickt werden. Das Ergebnis ist,
das die Heatronic und somit die Heizungssteuerung sowie der Kessel
exakt, die gleichen Prozesse durchlaufen haben.
Somit kann nun die Dekodierung der Nachrichten erfolgen.
Gruss
Besi
Hallo ihr beiden,
ich habe heute meine Cerastar mit einem BM1 und TA270 aufgerüstet, bin
begeistert was man dem Teil entlocken kann. Es wäre ja schade wenn die
Daten ungenutzt bleiben, ich würde die gerne mit meinem Hausbus-PC
verbinden um die Daten auszuwerten und Anzeigen zu lassen. Wie weit sind
eure Fortschritte?. Als CAN-Bus Interface habe ich mir das CAN200
ausgeguckt. Ich habe bis jetzt mit einem CAN-Bus keine Erfahrung und
leider auch kein CAN-Bus Analyser zur Verfügung. Mir würde es reichen
lesend auf dem CAN-Bus zuzugreifen um die Temperaturen bzw. Zustand der
Therme (Brenner an, Pumpe an u.s.w.) mitzuloggen. Wäre schön wenn Ihr
mir weiterhelfen könntet.
Viele Grüße
Sven
Hello
I'm, also trying to find some more info about building some kind of
datalogger for my Junkers heating system, but the best source page on
the net: (http://jucan.reissberg.com/index.htm), does not have more
info. Did someone continued development of this software? Where can it
be found? Which CAN/USB dongle is suitable, available on the market?
Thanks in advance.
Kiki
Hallo Besi, das hört sich ja gut an.
Sorry das ich mich jetzt erst wieder Melde...
Ich hatte auch mal einen CAN-Monitor angeschlossen, nur leider konnte
ich mit den Empfangenen Daten nicht soviel anfangen...
Konntest Du schon Werte den Can ID's zuordnen?
Ich hatte auch junkers mal angefragt bezüglich des Protokolls, aber wie
nicht anders zu erwarten gibt es keinerlei infos...
Gruß,
Thorsten
Hallo,
ich habe mir die Teile für einen PC Can-Bus Interface besorgt brauche
bloß ein wenig Zeit um das ganze zusammen zu löten. Hast du die
mitgeloggten Daten noch und könntest du sie mir zur Verfügung stellen,
damit ich schon mal sehen kann was und in welchen Format dort gesendet
wird?.
Viele Grüße
Sven
Anbein mal ein mitschnitt von mir im CSV-FOrmat.
Ich habe auch schon einige Kommentare eingetragen, aber keine Ahnung ob
davon irgend etwas stimmt...
Baudrate ist 10kbit
Wenn Du was herausbekommen hast melde dich mal.
Gruß,
Thorsten.
Wie ist das überhaupt so allgemein beim CAN-Bus...
Ich vermute mal ein reines umwandeln der HEX-Werte in Dezimal bringt
mich nicht unbedingt weiter, oder?
Hat jemand so einen bud reverseeingeniered (oder so..) und kann mir ein
paar tips geben?
Bin was das angeht nicht so die leuchte....
Gruß,
Thorsten.
Die Daten alleine bringen nicht so viel.
Man brauch ein paar weitere Infos zu dem Zeitpunkt, an dem die Daten auf
dem CAN-Bus mitgeloggt wurden. Wenn man dann z. B. die Aussentemperatur,
Vor- und Rücklauftemperatur usw. kennt, schaut man sich zu genau diesem
Zeitpunkt den CAN-Trace an. Dann lassen sich die CAN-IDs auch evtl.
zuordnen und man kann mit den Daten etwas anfangen.
Das klingt logisch...
Leider hat der CAN-Monitor den ich benutzt habe (TiN CAN von Ixxat mit
Cananalyzer light) nicht die Möglichkeit die Daten mit einem
Echtzeitstempel zu versehen, zumindestens habe ich nix gefunden. So
konnt ich leider nicht die Daten die Ich aufgeschrieben habe mit den
geloggten CAN-messages in einklng bringen...
Ich werde das interface mir nochmal ausleihen und einen Neuen Versuch
wagen...
Hat jemand evtl eine andere Software-Alternative ?
Möglichts als free oder Shareware natürlich.
Gruß,
Thorsten.
moin moin,
ich habe hier auch eine junkers im keller und ein can-interface im
rechner.
wie weit ist das ganze den nun gediehen?
würde mich gern beteiligen.
Vielleicht könnte jemand, der ein Ceracontrol TA 270 sein Eigen nennt,
mal bestimmte Aktionen mitloggen. Das dürfte das Reverse Engineering
beschleunigen.
Hallo
hab auch ne Junkers im Keller. Komme ich ohne Busmodul an die Heizung???
Wie?? Hätte ich einen Schaltplan, köönte ich gerne ein Platinenlayout
machen. Hab da einige Erfahrung.
Grüße
Martin
Hallo zusammen,
hat den schon jemand das Protokoll entschlüsselt?
Ich bin ebenfalls seit ein paar Tagen dran mir die CAN Kommunikation
zwischen meiner Cerasmart und einem TA270 etwas näher anzuschauen.
Leider kann ich im Moment nicht so viel Zeit investieren wie ich gerne
möchte.
Anbei trotz allem die Erkenntnisse die ich bisher gewonnen habe:
CAN ID
0x0200 / max. Vorlauftemperatur / Halbgradschritte (120 dez. -> 60°C)
0x0201 aktuelle Vorlauftemperatur Halbgradschritte (120 dez. ->
60°C)
0x0204 / max. Vorlauftemperatur / Halbgradschritte (120 dez. -> 60°C
0x0205 / max. Vorlauftemperatur / Halbgradschritte (120 dez. -> 60°C)
0x0256 Uhrzeit 4 dezimal Werte: Tagesnummer (1=Mo...7=So) ; Stunde ;
Minute ; "4" - (was die 4 am Schluss bedeutet weiss ich noch nicht)
Soweit mein aktueller Stand....
Gruss Dietmar
Das sieht doch schonmal ganz gut aus,
mein problem istt das ich im moment einfach keine Zeit finde um da
weiter zu machen.
Leider habe ich auch kein eigenes CAN-Interface - sodass ich mir immer
eins leihen muss, das leider auch nicht immer spontan verfügbar ist.
Im August habe ich drei wochen urlaub, vielleicht geht dann ja was...
@ mschleicher:
imho ist der CAN-Bus ohne das Busmodul nicht verfügbar, ohne wird es
nicht gehen...
@Dietmar:
Ich muss mal sehen wo meine Protokolle abgeblieben sind, hatte kürzlich
einen PC-Defekt.
@all:
Schön das ich nicht mehr alleine bin, jetzt dürften wir das hinbekommen.
Sooo schwer kann das ja nicht sein... ;-))
Gruß,
Thorsten
Sooo, habe meine CAN-Logs wiedergefunden.
Leider habe ich meine Zettel nicht mehr was ich wann an der Regelung
eingestellt habe....
Ich werde mir jetzt erstmal irgendwo ein CAN-Interface besorgen...
Ein CAN-Log habe ich mal angehängt.
Gruß,
Thorsten.
So, werde mich das Wochenende auch mal ransetzen.
Regelung bleibt, wie sie ist.
Ich will nur im 1.Stock ein Display haben mit ein paar Infos und einen
Taster, um die Zirkulationspumpe kurz einzuschalten, wenn man duschen
will.
CAN ID
0x0200 / max. Vorlauftemperatur / Halbgradschritte (120 dez. ->60°C)
0x0201 aktuelle Vorlauftemperatur Halbgradschritte (120 dez. ->60°C)
0x0204 / max. Vorlauftemperatur / Halbgradschritte (120 dez. ->60°C
0x0205 / max. Vorlauftemperatur / Halbgradschritte (120 dez. ->60°C)
0x0256 Uhrzeit 4 dezimal Werte: Tagesnummer (1=Mo...7=So) ; Stunde ;
Minute ; "4" - (was die 4 am Schluss bedeutet weiss ich noch nicht)
wobei sich 0x200 und 0x201 auf den Heizkreis beziehen, 0x204,0x205 auf
den WW-Kreis (Specherladung) beziehen. 0x205 ist die aktuelle
Speichertemperatur.
zus. kommen noch folgende IDs vor:
0F9h DL 0
207h DL 2
208h DL 1
209h DL 1
20Ah DL 1
20Bh DL 1
20Ch DL 1
20Dh DL 1
250h DL 1
252h DL 1
253h DL 1
254h DL 1
255h DL 1
258h DL 1
25Ah DL 2
404h DL 2
405h DL 2
0x252 ist der aktuelle Heizungsvorlauf-Sollwert, gebildest im TA270 aus
diversen Parametern, selbes Schema wie oben (0,5°-Schritte)
0x255 ist der aktuell gültige Warmwassersollwert.
Jetzt fehlt mir nur doch die Aussentemperatur, werde ich auch gleich
noch finden. Der Rest interessiert mich im Moment nicht, bei Gelegenheit
werde ich das hier vervollständigen.
schwupp, noch ein paar Infos:
Aussentemperatur liegt auf 0x207, Wert in 1/100°.
Also Anzeigewert 20°, CAN 0x07E2=2018=20,18° (wobei die Nachkommastellen
eher philosophischen Charakter haben :-)
0x209 ist Status Brenner:
00: Flamme aus
01: Flamme ein
Vielleicht hat noch jemand Lust, das fortzuführen, ich habe erst mal
alles, was ich brauche.
Hallo zusammen,
da ich auch eine Junkers samt TA 270 habe und diese gerne per
PC-Steuerung optimieren/kontrollieren möchte, habe ich mit Freude
gelesen dass auch andere an diesem Thema dran sind.
Derzeit überwache ich die Temperaturen per 1-Wire-Bus am PC. Schön wäre
wenn ich die Auswertung der Messwerte nutzen könnte, um die Heizung
selbst optimierter zu steuern. Dazu brauche ich zunächste erstmal ein
CAN-Bus-Interface ... ich dachte an dieses hier:
http://www.ehitex.de/p_info.php?xPD=113_117&products_id=264
Wäre das ausreichend?
Kann man überhaupt dann aktiv über den Bus gewisse Aktionen triggern
oder wäre es nur das Analysieren/Auslesen möglich?
Gruß Sascha
Sorry, was du da gefunden hast ist kein "CAN-USB-Adapter". Das ist ein
kleines Eva-Kit für den Controller in dem Stick.
Suche einfach nach "CAN Interface". Dann findest du genug Produkte mit
denen man mit dem PC/Laptop auf den CAN-Bus zugreifen kann. Hast freie
Wahl in der Form. USB-Box, PCI-Karten, RS232 Interface oder PCMCIA
Karte, sogar CAN-Ethernet Gateways gibt es. Ein einfacher
"CAN-USB-Stick" ist mir im Moment nicht bekannt. Am besten du schaust
dich mal dort um wo sich die Leute rumtreiben die im Auto mitlauschen
(Stichwort CAN-Hack).
Du kannst natürlich auch, den Artikel aus deinem Link nehmen. Musst dir
dann nur noch passende PC-Programm schreiben oder einen Treiber damit
die verfügbaren Programme damit umgehen können.
@Christian:
Die Tiny-CAN Teile sind eine Möglichkeit. Wenn es erst einmal um das
Lauschen geht, kann man sich im ersten Schritt auch ein kleines Program
für seinen Kontroller (mit dem man dann auch die Heizung steuern möchte)
schreiben, welches dann einfach die Bytes von CAN auf RS232 weitergibt.
Man muss halt eine relativ hohe Übertragungsrate auf der Seriellen
wählen. Wie groß die sein muss musst du selber ausprobieren.
PS: ich baue an keiner Heizungssteuerung. Ich habe nur auf anderen
Gebiet mit CAN zu tun und wollte eigentlich nur den Fehler von Sascha
richtig stellen bevor es zuspät ist.
Einen eigenen Kontroller zu Programmieren ist mir auch schon in den Sinn
gekommen, da es auch gleich eine gute Übung ist um die Funktion zu
lernen, die man später sowieso in einem Kontroller braucht.
Einen MCP2515 hab ich mir dafür schon besorgt, allerdings hatte ich noch
keine Zeit zum Programmieren.
Christian
Jetzt muss ich mich auch mal wieder melden.
ich komm im moment leider überhaupt nicht weiter meine Steuerung
anzuzapfen...
Ich bekomme demnächst allerdings eine neue Therme, ich weiss aber noch
nicht welche regelung dabei ist...
Wahrscheinlich eine von den neuen Junkers Reglern FW100 - FW500.
Angeblich werden die nun über einen 2-Draht-Bus angeschlossen.
ich befürchte das das kein CAN-Bus mehr ist?
Kann das jemand bestätigen??
Ich hoffe ich kann meine TA250 behalten....
Gruß,
Thorsten.
Hallo !
Ich hoffe, dass hier noch jemand mitliest.
Ich habe mich dazu entschlossen ebenfalls dem Datenstrom zwischen meiner
Junkers Therme, dem TA270 und dem HSM und dem HMM zu lauschen.
Nach umfangreicher Internetrecherche werde ich wohl dieses Teil hier
(http://elmicro.com/de/canusb.html) kaufen.
Die Software für 39,- € sollte auch nicht zu teuer sein.
Hinterher möchte ich mit Excel auswerten.
Jetzt meine Frage, da ich absoluter Frischling in puncto AN-Bus bin.
Gibt es Dinge zu beachten ?
Gibt es Erfahrungen ?
Kann mich sonst irgendwie jemand "an die Hand" nehmen ?
Danke !
Gruß,
Bernd
Hallo Bernd,
wenn ich das richtig sehe hast Du unterschiedliche Erdpotentiale ?
Oder hängen da alle CAN Baugruppen an einer Steckdose ?
Das bedeutet Du benötigst ein Modul mit galvanischer Trennung!
Sonst kann das böse Überraschungen geben.
Das canusb Modul und das Tiny-CAN I haben keine galvanische Trennung!
Es schadet auch nicht wenn das Modul den "listen only Mode" kann,
damit kannst Du unbemerkt einfach mal mit horchen :-)
Wenn Du ein Modul von mir kaufen willst musst Du das Tiny-CAN II-XL
oder größer nehmen.
Von den "canusb" kann ich dir wegen der fehlenden galvanischen
Trennung nur abraten.
Gruß
Klaus
Hallo, ich habe ein ZWR 18-6 KE 21 Kombitherme kann aber keinen Bus
Anschluß finden... Da wo der Stecker sein sollte ist nicht...???
Habe mir eine TA 270 inkl. HSM und HMM (gebraucht) gekauft...
Wenn es nicht möglich ist diese an meine Thermeanzuschliessen würde ich
die Bauteile wieder verkaufen...
LG Franz
Hallo, ich habe ein ZWR 18-6 KE 21 Kombitherme kann aber keinen Bus
Anschluß finden... Da wo der Stecker sein sollte ist nicht...???
Habe mir eine TA 270 inkl. HSM und HMM (gebraucht) gekauft...
Wenn es nicht möglich ist diese an meine Thermeanzuschliessen würde ich
die Bauteile wieder verkaufen...
LG Franz
Guten Morgen,
habe mittlerweile einige Dinge aus dem CAN eingelesen und speichere
diese nun in einer mySQL DB.
Hat jemand eine Idee, wie die Innentemperatur über den CAN übertragen
wird?
Mfg
Björn
Soweit ich mich erinnere gar nicht, wird nur vor Ort angezeigt.
Wird reglerintern mit allen anderen Parametern (Aussentemperatur,
Heizkurve etc) zu einer Sollvorlauftemperatur verwurstet.
Ich habe ihn jedenfalls nicht gefunden, und letzten Endes interessiert
das die Therme ja auch gar nicht.
Hallo,
obwohl der thread schon alt ist, probier ich es trotzdem..
Kann mir jemand sagen, welche CAN-Einstellungen ich benötige um die
Daten zu loggen?
Hat jemand in der Zwischenzeit weitere Ids identifiziert?
MfG und Danke im Voraus,
Roland
supr schrieb:> Kann mir jemand sagen, welche CAN-Einstellungen ich benötige um die> Daten zu loggen?Thorsten Weiss schrieb:> Baudrate ist 10kbit>> Wenn Du was herausbekommen hast melde dich mal.>> Gruß,
Vielen Dank für die Hilfe. Mein Raspberry Pi hängt jetzt an der Therme
und empfängt die Can-Messages. Dank der Hilfe hier konnte ich die
meisten Messages entschlüsseln. Ein paar sind mir leider noch unbekannt.
Hat jemand noch weitere Ids entschlüsselt?
Die folgenden fehlen mir noch:
20171111 16:11:21.609 31486:31515 INFO ### unknown ### id=0000020D [24]
20171111 16:11:23.851 31486:31515 INFO ### unknown ### id=00000258 [1]
20171111 16:11:25.843 31486:31515 INFO ### unknown ### id=00000417 [1,
1]
20171111 16:11:27.848 31486:31515 INFO ### unknown ### id=00000251
[255]
20171111 16:11:28.867 31486:31515 INFO ### unknown ### id=00000253 [0]
20171111 16:11:30.841 31486:31515 INFO ### unknown ### id=00000254 [1]
20171111 16:11:32.868 31486:31515 INFO ### unknown ### id=000000F9 [0]
20171111 16:11:33.848 31486:31515 INFO ### unknown ### id=00000250 [0]
20171111 16:11:42.308 31486:31515 INFO ### unknown ### id=00000208 [1]
Grüße und Danke,
Roland
Hi,
ich bin auch dankbar über diesen Thread und wäre an weiteren Details
interessiert. Ich schreibe gleich mal Junkers an in der Hoffnung, dass
ich/wir von dort evtl. direkt Infos bekommen.
Auf der anderen Seite interessiert mich auch, welche Register
beschrieben werden können, um Elemente zu steuern. Hat da jemand
Erfahrung?
P.S.: RPi3 mit MCP2515 (3,3v Mod) mit can-utils und Python Skript
(import fhem)
Nicholas John K. schrieb:> Ich schreibe gleich mal Junkers an in der Hoffnung, dass> ich/wir von dort evtl. direkt Infos bekommen.
Viel Erfolg :-)
Da wirst du exakt nichts bekommen.
H.Joachim S. schrieb:> Viel Erfolg :-)> Da wirst du exakt nichts bekommen.
Da hast du vollkommen recht :-)
Weiß einer von euch, welche Werte aus der Therme und welche aus der
Steuereinheit kommen? Leider habe ich nur einen Bus-Adapter, ansonsten
könnte man einen Sniffer/Proxy zwischen den beiden Einheiten einsetzen
und dann die Steuerung beeinflussen.
Nicholas John K. schrieb:> Weiß einer von euch, welche Werte aus der Therme und welche aus der> Steuereinheit kommen? Leider habe ich nur einen Bus-Adapter, ansonsten> könnte man einen Sniffer/Proxy zwischen den beiden Einheiten einsetzen> und dann die Steuerung beeinflussen.
Ich habe etwas gefummelt. Mir scheint, dass die TA270 "nur" Sollwerte
(Heizung/WW) an die Therme sendet. Nachdem ich die TA-Einheit entfernt
habe und nur meinen Pi am Bus hatte, habe ich lediglich die Codes
252/253 mal per CAN beeinflusst/gesendet und die Therme hat entsprechend
reagiert. Ansonsten würde nach einiger Zeit die Fehlermeldung A8
(Kommunikation unterbrochen) kommen.
Wenn ich jetzt noch die Außentemperatur mit benutze und eine Art
Heizkurve berücksichtige, kann ich doch eine eigene Steuerung
programmieren (quasi das Rad neu erfinden ;-). Oder was meint ihr? Die
Fußbodenheizungsventile werden (leider) direkt durch die Wandthermostate
gesteuert.
Moin Zusammen,
mittlerweile bin ich weiter mit meinem Projekt.
Ich habe jetzt einen RPi laufen, an dem zwei CAN-Module angeflanscht
sind. Das eine Modul hängt ist mit der Heizung und das andere Modul mit
der TA270 verbunden. Ich empfange also die CAN-Bus Meldungen im RPi und
sende sie dann an den jeweils anderen Bus weiter. In dem Zustand ist
dann alles wie gehabt. Ich setzte allerdings noch einen „Panikschalter“
ein (verbindet den Bus dann wieder physisch), damit meine Frau ggf.
alles wieder auf normal stellen kann, wenn ich mal nicht greifbar bin
:-)
Jetzt können die Werte beliebig verändert werden. Erfolgreich konnte ich
der Heizung bereits manuell Vorgaben für die Vorlauf- und
Warmwassertemperatur machen. Viel mehr macht die TA270 auch nicht.
Auf dem Bus ist auch die Außentemperatur und den Wert für die
Zimmertemperatur bekomme ich von extern. Ich denke damit lässt sich
relativ leicht eine Logik für eine Steuerung realisieren. Weiterhin
binde ich dann noch einen Kalender ein und kann dann auch Feiertage
berücksichtigen (was die TA270 nicht kann).
Interessant ist auch, dass ich die Heizung jetzt unter Berücksichtigung
der Wetterverhältnisse steuern kann. Ist viel Sonnenschein vorhergesagt,
fahre ich die Heizung morgens früher runter, denn unser Haus nimmt die
Wärme gut auf. Ist es draußen hingegen kühl und windig, muss ich etwas
gegensteuern.
Bleibt also noch etwas Arbeit für die Software :-)
HBW auch eine Junkers Heizung mit einem BM1 Modul und im Wohnzimmer den
TA250
Würde gerne meine Heizung auch Smart steuern. Daher die Frage wenn man
das hier so liest dann haben es ja einige geschafft.
Was brauche ich?
Wie funktioniert das ?
Würde mich echt freuen wenn das hier weiter lebt und wir alle die
Heizubg über FHEM oder IOBroker steuern können.
Hallo an alle,
Ich verfolge dieses Thema mit großem Interesse. Ich spreche
Niederländisch (aus Belgien), daher wird diese Übersetzung nicht perfekt
sein.
Ich selbst habe eine Junkers-Wärmepumpe (Split-Air-Water) mit der
Inneneinheit ASE 120. Dazu habe ich einen Raspberry Pi mit PiCAN2-Modul
angeschlossen, um das CAN-Protokoll zu lesen und zu interpretieren.
Der CAN-Bus ist also angeschlossen:
* Innenthermostat
* Bedienfeld am Innengerät. Dieser enthält den Prozessor und die
Firmware, die die Wärmepumpe steuern.
* 2 Leiterplatten (PCB) in der Inneneinheit, die eine Schnittstelle
bieten (Ablesen der Temperaturen, Signale von und zur Außeneinheit)
* Raspberry-Pi mit PiCAN2-HAT.
Bis heute kann ich aus den CAN-Nachrichten nicht viel Bedeutung
gewinnen. Entgegen den Erwartungen gibt es viele verschiedene CAN-IDs,
die Nachrichten auf dem CAN-Bus veröffentlichen.
Anbei ein Screenshot des "Cansniffer", der auf dem CAN-Bus 20 Sekunden
gelesen hatte. Die Liste der IDs wird länger, wenn der Cansniffer länger
liest.
Hat jemand mehr Einblick in das CAN-Protokoll, als Junkers es anwendet?
Was bedeuten die vielen verschiedenen CAN-IDs? Wie sind die
CAN-Nachrichten aufgebaut?
Vielen Dank im Voraus
Guten Tag!
Dieses Thema existiert nun seit 2007 und immer wieder gibt es neue
Beiträge. Mich würde zum einen interessieren, wie weit ihr mit der
Entwicklung einer Junkers-Spezifischen Software gekommen seid...
... zum Anderen welche Interfaces Ihr verwendet. Z.B. dieses
https://www.antratek.de/usb-can-v7-00-analyzer
ist zumindest mal preiswert, im Gegensatz zu all den anderen.
Galvanische Trennung war mal ein Thema, das wird dieses Ding wohl nicht
bieten. Erfahrungen mit/ohne diese Art von Sicherheit? Hat jemand sein
BM1 oder den TR/TA geschrottet?
Ich möchte nicht in die Steuerung eingreifen, sondern lediglich etwas
Analyse betreiben, Anzahl der Brennerstarts, die jeweiligen Laufzeiten,
Ruhezeiten entsprechen Taktsperre/Schaltdifferenz, vorgegebene und
tatsächliche sowie über den Zeit gemittelte durchschnittliche
Vorlauftemperaturen etc.
Bin für alle Erfahrungen dankbar...
Der Trabant aus dem Norden Deutschlands
Moin Trabant,
mit dem ISO1050 kannst du eine galvanische Trennung herstellen. Das ist
ein CAN Tranceiver, den du dann z.B. mit dem MCP2515 benutzen kannst.
Ich habe mich ohne galvanische Trennung an den Bus gehängt und seit dem
keine Ausfälle, bzw. Zerstörungen gesehen. Ich nutze immer noch zwei
Breakout Boards.
Auch ich betreibe meinen Lauschapparat
(https://elmicro.com/de/canusb.html) bereits seit acht Jahren ohne
galvanische Trennung und meine Heizung schnurrt wie ein Kätzchen. ;-)
...was mich allerdings interessieren würde, ob jemand mittlerweile eine
funktionsfähige Software für Linux-Systeme (speziell Synology-NAS) sein
Eigen nennt...
Gut, dann werde ich mir bzgl. der galvanischen Trennung mal keine
Gedanken machen.
Wie wertet Ihr die empfangenen Pakete denn aus? Ich könnte sie z.B. mit
einem Skript (wie Perl) verarbeiten und dann mittels eines CSV-Formates
in Excel importieren... mein Ziel wäre eine Grafik mit verschiedenen
Kurven... Heizung ein/aus (Pumpe), Brenner ein/aus, Vorlauftemperaturen
etc.
Sendet die Therme denn nur bei Statusänderungen z.B. ein BRENNER EIN
oder werden die Werte in festgelegten Zeiträumen übermittelt?
Eine Tabelle mit den IDs und deren Bedeutung/Umrechnung wäre schön,
findet sich aber im Grunde auch schon etwas weiter oben im Thread.
Wenn Ihr da schon was Eigenes entwickelt habt müsste ich nicht ganz von
Vorne anfangen - was die Plattform und verwendete Software betrifft bin
ich da flexibel... Windows oder etwas Unix-artiges.
Oft wird z.B. der Rasperry erwähnt, damit habe ich bislang noch keine
Erfahrungen.
Danke schonmal für alle Inputs.
Raspberry hat ja (fast nur) Linux drauf. Hol dir einen - macht Laune.
Das Anklemmen der Breakout Boards geht recht einfach. Es muss nur eine
kleine Änderung bzgl. der Spannung vorgenommen werden. Die eigentliche
Herausforderung ist das Aufsetzen der Schnittstelle. Da wäre ich
behilflich. Im Netz gibt es dazu auch reichlich Anleitungen.
Die Werte werden i.d.R. nur bei Änderung übermittelt. Remote Requests
bringen leider keine Antworten.
Auch ich nutze nur eigene Skripte (Python), die u.a. eine Brüche zu FHEM
herstellen. Durch die Verwendung von zwei CAN Modulen hänge ich mich
zwischen die TA und der Heizung und kann so (gesteuert über einen
Kalender u.ä.) Einfluss nehmen (Schnellaufheizen [Warmwasser-Soll],
manuelle Vorlauftemperatur).
Eine fertige Software kenne ich nicht. Falls du dich mit Einsen und
Nullen gut auskennst schlage ich vor, selbst Hand anzulegen. Perl geht
da sicher auch.
Nicholas John K. schrieb:> Die Werte werden i.d.R. nur bei Änderung übermittelt.
Aus der Erinnerung heraus: glaube ich nicht, die plappern die ganze
Zeit. Könnte aber noch mal nachschauen.
Nicholas John K. schrieb:> Das Anklemmen der Breakout Boards geht recht einfach. Es muss nur eine> kleine Änderung bzgl. der Spannung vorgenommen werden. Die eigentliche> Herausforderung ist das Aufsetzen der Schnittstelle. Da wäre ich> behilflich.
Welchen Can Boards hast Du denn in Einsatz? Und wie sind sie am
Raspberry angeschlossen... ich vermute mal nicht über USB...
So, ich habe mir einen Raspberry 3B+ und ein PiCan2 Board samt einem für
beides passenden Gehäuse zugelegt... siehe
http://skpang.co.uk/catalog/pican2-canbus-board-for-raspberry-pi-23-p-1475.html
Hat alles auf Anhieb funktioniert, ich importiere die Werte jetzt
mittels eines Skriptes in den Volkszähler
(https://www.volkszaehler.org/).
Ich habe noch zwei zusätzliche Werte gefunden:
202H 1 Byte max. Warmwassertemperatur in Halbgradschritten
203H 1 Byte aktuelle Warmwassertemperatur in Halbgradschritten
Die weiter oben genannten 204 und 205 sind wohl für den Speicherbetrieb.
Meine ZWR-18-6 bereitet das WW im Durchlaufprinzip, in diesem Fall
werden dann dann die IDs 202 und 203 benutzt.
Folgende Werte meines Reglers konnte ich noch ermitteln, unter
Vorbehalt. Ich habe einen TR220 Raumtemperaturregler, ob sich dessen
Ausgaben mit den TA Modellen decken, weiss ich nicht...
250H 1 Byte Sollwert von TR: Heizbetrieb 00=Aus 01=Ein
251H 1 Byte Sollwert von TR: Heizleistung gleitend (00-FF)
252H 1 Byte Sollwert von TA/TR: Heizungssollwert(VLT) in
Halbgradschritten
253H 1 Byte Sollwert von TA/TR: Speichersollwert in Halbgradschritten
--> der Vollständigkeit halber mit aufgeführt
254H 1 Byte Sollwert von TR: WW-Sofort 00=Aus 01=Ein
255H 1 Byte Sollwert von TR: WW-Sollwert in Halbgradschritten
--> bei einer ZWx Therme mit WW-Bereitung im Durchlaufprinzip, im
Normalfall identisch mit 202H
256H Uhrzeit 4 HEX Werte
1 Byte = Tag 1 Montag / 7 Sonntag
2 Byte = Stunde
3 Byte = Minute
4 Byte = ????
Die 208, von der Heizung kommend, ist in früheren Beiträgen 24, bei mir
18. Mag das die max. Heizleistung des Gerätes sein, ich habe eine ZWR
18-6?
Trabant schrieb:> Die 208, von der Heizung kommend, ist in früheren Beiträgen 24, bei mir> 18. Mag das die max. Heizleistung des Gerätes sein, ich habe eine ZWR> 18-6?
Entschuldigt, ich meinte die 20D. Nicht die 208.
Nochmal eine Frage... habt Ihr Euren Can-Bus an beiden Enden terminiert?
Oder ist im BM1 und TR/TA schon eine entsprechende (120Ohm?)
Terminierung enthalten? Ich vermute bei den niedrigen
Übertragungsgeschwindigkeit und der kurzen Leitung ist das so und so
nicht kritisch... Das von mir verwendete PiCan2 hat einen entsprechenden
Widerstand auf der Platine, der jedoch standardmässig nicht aktiv ist.
Hallo,
ich verfolge dieses Thema auch schon seit einigen Jahren, habe aber nie
die Zeit gehabt meine Therme ZBS 22/120 auf CAN_Bus umzubauen.
Hätte diesbezüglich auch mal einige Fragen, vielleicht habt Ihr sie ja
schon gelöst.
Der Canspeed ist 10Kbit angegeben, somit Lowspeed. Lowspeed hat aber
andere Übertragungsparameter als Highspeed. Habt Ihr noch
Widerstände(CANH&CANL) nach Ub5V gesetzt oder hattet Ihr keine Probleme
damit?
Habt Ihr vielleicht auch umgebaut und überlegt wo durch wird die
Freigabe von BM1 bzw. TA250 zu TA211E(Analogteil)der Elektronik
mitgeteilt wird. z.B ein Pin oder so. Weil Schaltpläne oder Info's
bekommt man nicht.
Würde mich freuen über eine Info.
danke
Peter schrieb:> Widerstände(CANH&CANL) nach Ub5V gesetzt oder hattet Ihr keine Probleme> damit?
Keine Probleme. Ich habe den MCP2551 drin.
> Habt Ihr vielleicht auch umgebaut und überlegt wo durch wird die> Freigabe von BM1 bzw. TA250 zu TA211E(Analogteil)der Elektronik> mitgeteilt wird.
Es reicht, das BM1 anzustecken.
Hi,
danke.
Erstaunt mich doch, ist wohl schon Jahre her das ich mit Lowspeed (100)
gearbeitet habe, aber ohne zusätzlichen Adapter hatten wir Probleme.
Aber Automotive ist halt etwas anders. Der letzte Treiber ist bei mir
MCP2562 (Watterott)allerdings für FD soll besser sein ~~.Übrigens eine
Terminierung über Rg<60 Ohm (2x120) wird kritisch.
Zu meinen Anliegen zurück.
Bin etwas verwirrt, wenn ich Eure einzelnen ID's und deren Zuordnung
lese.Ich kann doch nicht den Status, hier Info, anfordern und
gleichzeitig diese ID auf dem Bus als Heizungsinfo(<--TA...) haben.Der
gültige Status muss doch immer von der Heizung kommen (IDx) und einige
Daten vom TA..für die Heizung, bzw. evtl. mit gleichen Inhalts. Und ich
sehe nur 1,2 oder 3 Bye lange Telegramme und ein mal vom WERT. Sehr
ungewöhnlich, ist das so richtig?
Weil Statusanfragen können auch im CAN-Bus(normal) größer als 8 Byte
werden(next 21, 22....). Werde wohl erst mal eine Trockenübung mit dem
TA.. durchführen müssen, wenn das geht.
Entwirrt mich mal, muss ich umdenken.
danke
Ich verstehe dein Problem nicht - das ist doch wirklich CAN auf
einfachster Stufe.
Da wird nichts angefordert, jeder twittert so vor sich hin.
Im Normalbetrieb ist der TA270 Chef der Sache, der sagt was zu tun ist,
die Therme liefert nur Daten (Temperaturen, Brennerstaus u.ä.) und führt
aus (Warmwasser bitte auf xx Grad, Heizungsvorlauf bitte auf yy Grad),
abhängig von eingestelltem Zeitprogramm, aktuellen Temperaturen,
Heizkurve, Aussentemperatur, manuellen Eingriffen.
Doppelte IDs sind mir nicht aufgefallen, die machen auch nie Sinn.
Hallo,
sorry,...ich verstehe Dich wirklich,
H.Joachim S. schrieb:> Ich verstehe dein Problem nicht - das ist doch wirklich CAN auf> einfachster Stufe.
aber.. ich habe evtl. vor auf ein sicherheitsrelevantes Gerät über
CanBus zu zugreifen ob Aktiv oder Passiv.-->Gefährlich, teuer und ich
friere evtl.. Wie weit die Systemsicherheit vor 13 Jahren war, weiß ich
nicht.
Ich habe nicht einmal eine Beschreibung der Hauptplatine gefunden noch
der Pinbelegungen der Stecker( bis auf Can_Bus),noch der Software. Aber
es ist ein Bus_System von Bosch. Bosch ist der Erfinder des CAN-Buses
und ich bin mir sicher das der übereinstimmt mit der Norm. Die
Beschreibung vom MCP2515 wird Dir bekannt sein, dann weist Du auch was
alles unternommen wird das der Busverkehr geregelt ist.
H.Joachim S. schrieb:> Da wird nichts angefordert, jeder twittert so vor sich hin.
Frage, wie wird dann ein Fehler in der Kommunikation
festgestellt?-->evtl. durch Timeout der "zyklischen" Information. Das
kann im ms bis s Bereich stattfinden und das sind Daten die die
Hauptplatine immer benötigt!....Wenn ich am Drehschalter Info einschalte
bekomme ich alle 3s laut Beschreibung andere Daten.--> ID(Botschaft
"Info")wird gesendet an Hauptplatine, angefordert und zugestellt durch
die Hauptplatine, aber im Hintergrund läuft das Heizungsprogramm weiter.
Gezielt bekommst Du deine Daten und nicht aus einem Sammelbecken mit
evtl. uralten Daten.
H.Joachim S. schrieb:> Im Normalbetrieb ist der TA270 Chef der Sache, der sagt was zu tun ist,> die Therme liefert nur Daten (Temperaturen, Brennerstaus u.ä.) und führt> aus
Sorry, sehe ich anders, der Chef ist, wer die höhere Priorität und die
Entscheidungsgewalt hat. Das ist ganz sicher die Hauptplatine, das ist
ja keine dumme PID. Auch weil TA211E und eine Uhr, Ta 270 ersetzen kann.
Ta270 ist ein Ein- und Ausgabe gerät. Bezogen auf CAN-Bus gibt es kein
Chef(Lin-Bus) nur die Priorität in der ID. Ansonsten sehe ich hier ein
CAN-Bus System zur Bedienung und Info.
Ich persönlich würde gerne auf dieses System zugreifen ohne
schnickschnack also TA250. Weil ich brauche keinen Raumfühler, noch
verstelle ich meine Heizung ständig, weil die Raumtemperatur nicht
stimmt, dafür ist die neuere Heizkörpersteuerung im Raum zuständig.Aber
eine Optimierung mit der Heizkörpersteuerung würde was bringen und dafür
möchte ich gerne auch mal tiefer ins geschehen schauen. Wie zum Beispiel
meine Frage ob eine Botschaft vom Einstellgerät kommt und evtl. nur
Rohdaten behaltet oder vom Steuergerät mit überarbeiten Daten kommt
sollte doch bekannt sein. Vielleicht erreicht man ja auch einen
Mitarbeiter der Firma Bosch Junker um an ganz andere Daten zukommen, wie
Service- oder Entwicklerbotschaften.
Du siehst das viel zu kompliziert :-)
Sicherheitsrelevante Sachen laufen natürlich im inneren der Therme
autonom ab (Gasdruck, Flammenüberwachung, Überdruckschutz,
Überhitzungsschutz, Frostschutz), damit hat der Regler und auch die
Kommunikation nichts zu tun.
Aber ansonsten bestimmt ausschliesslich der TA270, was der Wärmeblock
machen soll. Und wenn da die Anforderung kommt: Vorlauftemperatur 80°
macht der das und fängt nicht an zu überlegen: draussen hat es 25°, das
macht keinen Sinn, bekommst keine 80° Grad von mir.
Und natürlich werden die eingehenden Daten auch mit Grenzen versehen.
Einmal absolute (vielleicht 95°? - weiss ich nicht) und dann noch vom
Nutzer programmierte. Da weiss ich allerdings nicht aus dem Kopf, ob die
schon im TA270 als Grenzwert behandelt werden oder erst in der Therme,
ist aber auch egal.
Und ja, es gibt mit Sicherheit auch ein Stück Programm, was im Fall des
Kommunikationsausfalls zu tun ist. Und das wird nicht sein: heize was
geht bis eine Sicherung anschlägt.
Auch mit deinem 3s-Info-Intervall liegst du falsch. Die werden nicht
angefordert wenn sie angezeigt werden sollen, sondern liegen ständig auf
dem Bus und damit im Speicher des TA270. Ob die dann tatsächlich
angezeigt werden ist ne ganz andere Geschichte. Wenn der Benutzer auf
Info schaltet wird eben alle 3s eine andere Information im Display
angezeigt.
Meine Anzeige zeigt z.B. u.a. immer die Warmwassertemperatur an, egal ob
jemand am TA270 auf Info geschaltet hat.
Und wenn man jetzt mal bei der Heizung bleibt, kann und macht die Therme
nichts anderes, als eine gewünschte Vorlauftemperatur bereitzustellen
und nach Möglichkeit selbständig zu halten.
Wie intelligent nun die Vorlauftemperatur an den tatsächlichen
momentanen Wärmebedarf angepasst wir ist Sache des Reglers.
Bei uns funktioniert das Prinzip des Raumreglers im Wohnzimmer(also hier
der TA270) hervorragend. Das ist der grösste Raum im Haus und umfasst
fast das ganze Erdgeschoss. DIe Heizkörperthermostate in diesem Raum
stehen auf Maximum, Führungsgrösse für die Vorlauftemperatur ist also
die Temperatur im Wohnzimmer. Alle anderen Zimmer werden mit den
Heizkörperthermostaten geregelt.
Ich habe keine Ahnung was du da noch mit geheimen Botschaften erreichen
willst, das ist alles wirklich so simpel.
Mit den Infos hier im thread kannst du dir deinen eigenen
Regler/Bediener bauen.
oh...sorry
Mag sein, das ich es anders sehe oder vielleicht nur aus einer anderen
Richtung, aber es ist sicher nicht mein Anliegen etwas hier zu
erstreiten...
Es währe Unsinnig...ok.
Ich suche Wissen, dass für mich logisch erscheint und das ich verstehe.
Aber äußere mich auch über andere Meinungen mit einem Fragezeichen, wenn
es nicht so ist oder ich es für sehr fraglich halte.
Danke für Deine Info und Meinung
Ich würde trotzdem gerne verstehen, was du eigentlich suchst und
erreichen willst.
Das ist und bleibt nur ne Kiste mit ner Flamme drin, die warmes Wasser
macht und nebenbei auf sich selbst aufpasst.
Die Pumpenleistung/Drehzahl kann man soweit ich weiss nicht steuern,
geht nur an oder aus. Fällt also weg als Ziel.
Die Brennerleistung/Gasdurchsatz ist variabel - willst du da ran?
Vielleicht geht das mit "geheimen Botschaften". Macht aber auch keinen
Sinn, da du dann die Rücklauftemperatur (und damit den aktuellen
Wärmebedarf) aus der Regelung nimmst.
Kurz: was willst du mehr von einem Wärmeerzeuger, der dir im Idealfall
mehr oder weniger stationär genau die Wärmemenge (bei konstantem
Durchfluss der Pumpe ist das die Vorlauftemperatur) liefert, die gerade
benötigt wird und dabei auf wilde Regelschwingungen verzichtet.
Welches Wissen suchst du?
Hi,
nun Wissen, erarbeitet man sich und dann kann man rum spinnen,
was mach ich damit?
Als ich mein Haus sanierte bzw. auch die Heizung, habe sie ganz
herausgerissen, berechnet und neu installiert, wusste ich sehr schnell
warum diese Junkers_Heizung nur halb so viel kostete, wie andere.
Regelungstechnisch sehr einfach, das ist sie auch, aber sie
funktioniert. Bis auf diese sch...EA Fehler.
Sicher ist es ein Ziel Fehler zu erkennen bevor sie zum Problem werden
(Betriebsdaten ohne Ende) und natürlich auch die Infos (" alles ok") und
evtl. bessere einfachere Bedienung zum Beispiel über irgend einen Tablet
oder besser Fernsehn. Mehrere Stufungen der Nacht- Tagsabsenkungen oder
der Warmwassersteuerung, das ist fürchterlich was angeboten wird. Ich
bin kein Software_Spezi, aber eine selbstlernende Heizung währe doch ok.
:-)
Was bei mir zeitlich und technisch mit der alten Junkers möglich ist
steht noch in den Sternen. Ich habe schon 2013 die TA211E versucht zu
analysieren Eagle_Schaltplan( habe ihn nicht mehr gefunden). Grund war
-->Ein NTC als Temperaturfühler das geht genauer und zwar mit
Feuchtigkeit und kann man das ändern?-> eher nicht.
Entwicklerbotschaften sind oft zusammengefügte wichtige Information in
einem Schub
Ich will sicher die Therme nicht vergewaltigen in irgend einer Form oder
eingreifen in die Hardware evtl. aber anders führen.
Deshalb suche ich momentan Wissen über diese Kiste mit der Flamme.
Übrigens habe ich mir heute die BM1 Karte angesehen, die besitzt
scheinbar eine CPU mit 6MHz und I2C Speicher. Vermute, auf der
Hauptplatine existiert einen zweiter Bus?? Der sowohl mit der TA211
(k.CPU)als auch mit der TA250 kommunizieren kann?
Werde mal versuchen in den nächsten Tagen besser Wochen nur die TA250
zum reden zu bringen.
Keiner zwingt dich, einen Junkers-Regler zu verwenden. Ich habe die auch
schon via Peak-CAN und paar Zeilen VB vom PC aus gesteuert. Das einzige,
was du dafür definitiiv brauchst ist das BM1 und og. Infos über die
verwendeten CAN-Botschaften. Dann läuft die Kiste. Keine Uhr, keinen
TA250, keinen TA211, keinen TA270, nix.
Kannst du völlig frei fremd regeln im Rahmen der physikalischen Grenzen
und evtl. in der Therme gesetzten Grenzwerten.
Welche E/A-Fehler meinst du? Habe noch keine bemerkt. Meine läuft seit
15 Jahren fast störungsfrei, einmal hats das BM1 grundlos zerlegt.
Beitrag "Junkers TA270 CAN-Fehler 1"
Wenn du der sagst: "mach Warmwasser 70° jetzt" macht die das.
Wenn gerade kein Warmwasser benötigt wird (hat Vorrang), liefert sie
ziemlich genau das was du an Heizungsvorlauf haben willst. Das kannst du
tun und zum letzten Mal: mehr kann die Kiste nicht. Es fällt mir auch
nichts ein, was sie noch können sollte, wenn ich mir was wünschen könnte
und was mir bösartigerweise vorenthalten wird und da nur mit
Insiderwissen rankäme.
Und jetzt bin ich auch fertig hier, wir reden anscheinend aneinander
vorbei.
>Meine Anzeige zeigt z.B. u.a. immer die Warmwassertemperatur an, egal ob>jemand am TA270 auf Info geschaltet hat.
Ich bin ja auch relativ neu dabei und habe etwas mitgelesen. Ein paar
Erfahrungen von mir: Die Ist-VLT sowie Brenner-An und Heizung/Pumpe-An
werden von meiner ZWR 18-6 genau alle 6 Sekunden übermittelt. Die
maximale VLT sowie die WW-Ist-Temperatur alle 30 Sekunden.
VLT Soll vom Regler kommt im Heizbetrieb alle 5 Sekunden, im
"Schlafmodus", also wenn die Heizleistung abgeschaltet ist, nur noch
alle 30 Sekunden.
Interessant ist, dass manchmal die Brenner und Pumpe an/aus Meldungen
(Can-ID 209 und 20A von der Heizung) sporadisch ausbleiben, während die
anderen genannten Werte weiter von der Therme gesendet werden.
Dies - und da es ja nur sporadisch auftritt kann ich nur orakeln -
meiner Beobachtung nach dann, wenn ebendieser Schalter am Regler NICHT
auf Info steht.
Schaue ich dann am TR ob der denn die entsprechende Info anzeigen kann
und drehe dazu den Schalter auf Info, dann sendet (wohl der Regler) eine
Nachricht mit ID 0F9 Wert 00 auf den Bus, direkt und reproduzierbar von
der Anforderung 250 (Heizung/Pumpe an/aus).
Genau ab dann kommen von der Heizung wieder die fehlenden 209/20A. So
als ob genau die Meldungen, welche wirklich nur rein zu Infozwecken für
den Benutzer übermittelt werden, durch den Info-Schalter aktiviert
werden.
Hi,
@ Trabant, wenn ich mir das erlauben darf: super arbeit!
@ H.Joachim S.
sehe ich gar nicht so verbissen und unterschiedlich, nur momentan habe
ich auch noch andere Baustellen.
"Deshalb suche ich momentan Wissen über diese Kiste mit der Flamme."
mehr nicht und ich danke Dir sehr für die Info, deiner Meinung und
deiner Arbeit hier.
alles ok?
Ich meine "EA" Junkers_fehler: Flamme nicht erkannt. Tritt der ~3 mal
auf, steht die Heizung. Beinhaltet viele Fehler in Grau_Zone, Gas,
Ionenstrom, Elektroden und so weiter, wird immer teuer. Halt... in der
Kiste nix für Besitzer der Heizung.Ich habe den immer, aber Heizung
läuft.
Frage: existiert eine ID in der gespeicherte Fehler mit geteilt werden?
Hallo zusammen,
nachdem ich hinreichend und intensiv aus den Beiträgen hier zum Thema
“CAN Bus“ und “Junkers“ profitiert habe, möchte auch ich meinen Beitrag
leisten. Zunächst habe ich meine Junkers ZBS 3-16 von TA211 auf BM1 mit
TA250 umgerüstet, was generell einen Zugewinn in der Bedienung darstellt
(keine Ahnung, warum ich damit 15 Jahre gewartet habe!?). Im Anschluss
habe ich mich in dem für mich völlig unbekannten Thema “CAN Bus“
angenähert
-> Zielsetzung: Junkers goes WLAN
Bei der Umsetzung habe ich mich des ESP-32 und dem CAN-Bus-Shield für
den Arduino entschieden. Vorteile des ESP-32 gegenüber dem Arduino sind:
- schnellerer Prozessor
- mehr Speicher
- WiFi & BT on board
- geringer Preis
- mehr oder weniger identisch Programmierung
Grundlegend ist zu beachten, dass der ESP-32 mit 3,3 Volt an den GPIOs
arbeitet und der CAN-Bus mit 5,0 Volt. Daher habe ich den
Treiberbaustein (TJA1050) von der generellen Spannungsversorgung (Vcc =
3,3V) getrennt und separat mit 5,0V versorgt. Wenn der ESP-32 mit 5V
(via USB-Port) betrieben wird, können beide Spannungen am ESB-Board
abgegriffen werden.
Die Daten am CAN Bus können relativ schnell über eines der
Demo-Programme zum MCU-Shield im Seriel-Monitor sichtbar gemacht werden.
Die Verkabelung von MCU-Shield und ESP-32 findet ihr in der beigefügten
Datei. Die Pin-Belegung am ESP-Dev-Baord variieren von Hersteller zu
Hersteller.
Im nächsten Schritt habe ich dann die WiFi-Übertragung mittels
MQTT-Broker gemacht. Der Broker läuft auf einem Raspberry Pi4, der als
Zentrale meiner Gebäudeautomation läuft. Über diese Plattform bekomme
ich die Daten der Heizung in beliebige Formate und Darstellungsformen
gebracht.
Aktuell nutze ich NodeRed zur Visualisierung, um die Betriebszustände
von Brenner, Pumpen und Temperaturen zu sehen und um einen
24-Stunden-Report zu generieren. Mittelfristig werde ich über den IO
Broker gehen, da ich weitere Komponenten (z.B. HomeMatic) in
Visualisierung einbeziehen möchte.
FAZIT: CAN-Bus kann gelesen werde, Daten werden per WiFi übertragen und
Dashboards arbeiten stabil
Nächste Schritte:
- Programm für ESP optimieren (ich bin kein Programmierer)
- Platine fräsen
- Gehäuse bauen – resp. drucken
- IO Broker einbinden
Viele Grüße - Kay
Ich frage mich nur warum du nicht einfach einen 3.3V CAN Tranceiver
benutzt und extra noch einen MCP2515, wo doch der ESP32 ein internes
CAN-Interface hat.
Das liegt daran, dass ich ursprünglich mit einem Arduino gestartet bin
und das MCU-Shield schon hatte. Aber Du hast natürlich Recht damit, dass
der Aufbau noch vereinfacht werden könnte.
Gruß, Kay
Hallo Kay,
Super Arbeit!!
...
Seit langen mal wieder etwas Zeit hier für.
Hast Du in diesem Zusammenhang die Belegung des ST1 bzw. ST9 TA Modul
analysieren können, wird mich interessieren. Weil Ta211E und BM1
benutzen den gleichen Stecker somit wahrscheinlich auch eine
Schnittstelle. Rxd/Txd
Zum letzten Eintrag: Wemos hat eine ESP Platine D1 R32 auf Uno Basis und
Watterott hat die aufsteckbare CAN-Bus Platine (15Euro, ICSP ändern und
auf 3,3V einstellen mit 5V, fertig in passenden Arduino_Gehäuse.Die SW,
die funktioniert, bekommst Du inzwischen überall bzw. hast Du ja. Schau
Dir das mal an.
Eine Frage: Funktioniert der CAN-Bus beim ESP32 überhaupt?
Gruß Peter
Hallo,
zur Info:
Hauptplatinen Stecker ST9 TA Modul bzw. BM1.ST1 oder TA211E.ST1
auf den Pkt. gebracht
Junkers bzw. Bosch gibt keine Steckerbelegung preis.
Schade das sich Bosch so verschließt.
Gruß Peter
Hallo zusammen,
ich habe eine ZSBR 7-25 mit TA270 und einem gemischten Kreis (HMM) und
möchte die CAN-Botschaften mitlesen, zur Info und weils mich einfach
interessiert :)
Hat jemand von euch einen gemischten Kreis? Gibts dazu schon CAN-Ids?
VL soll und ist im gemischten Kreis, Umwälzpumpe gemischter Kreis?
sg, bleibts gesund
Martin
Hallo,
..habe ich nicht...aber,
schau mal weiter zurück in der Zeit. Sofern Du diese Daten über das
Bedienteil sendest (Vorgabe), werden sicher auch Daten(Ist_Werte) zurück
gemeldet. Ich meine aber gelesen zu haben, dass in diesem Fall 2
Bedienteile TA270 vorhanden sind~~.
..um das Scannen wirst Du nicht herumkommen.
Gruß Peter
Danke, werde ich machen CAN-Modul ist schon bestellt.
Gefundene IDs werde ich hier für die Allgemeinheit posten.
Ich muss nochmal was fragen, hat nicht wirklich was mit dem CAN-Bus zu
tun, ich frag trotzdem an der Stelle mal :)
Seit kurzem habe ich das Problem, der Drehknopf
„Heizen“ macht nichts mehr, sprich die VL-Soll Temperatur ändert sich
nicht?
Bei Außentemp=4°C ergibt sich rein aus der Heizkurve eine Soll-VL Temp
von 33.5°C.
Und das ist auch genau was der (die, das) TA270 weitergibt.
Im Menü unter Info ist beim gemischten HK die VL Solltemp genau diese
33.5°C.
Ich habe die Raumtemperaturaufschaltung deaktiviert, also sollte wenn
ich den Drehknopf auf wärmer stelle (ganz rechts), dann sollte laut
Bedinungsanleitung die VL Soll Temp um 25K erhöt werden. Das tuts aber
nicht. Der Drehknopf hat da keinen Durchgriff?
Wenn ich allerdings den Drehknopf auf aus stelle, dann kommt soll-VL
Temp = 10°C raus. Das passt ja so.
Hab ich irgend eine Einstellung übersehen oder warum wird die Soll-VL
Temp nicht erhöht?
PS: Die Einstellung der HK: Fusspunkt=20°Cm Endpunkt=-15°C
HK_Fusspunkt=10
M_Fusspunkt=20
HK_Endpunkt=10
M_Endpunkt=50
Hallo Martin,
nun so richtig kann ich Dir nicht folgen.
Deine Heizkurve liegt bei 20/10 und -15/10 [°C]? Deine M-Punkte stimmen
schon eher.
Ich bin gerade dabei den "Regler Einschubmodul" TA 211E zu untersuchen
sehe Dir bitte mal die PDF an. Das Modul wird noch "analog" mit Poti
eingestellt. Hier wird noch erklärt was Du machst. Bild 15 stellt die
Erklärung zur Heizkurve und die einzelnen Parameter.
Du solltest auch die Einstellung am Ofen kontrollieren. Du solltest E
oder 5 haben bei älteren Häusern.
Gruß
Peter
HAllo Peter,
laut Bedinungsanleitung vom TA270, sollte die Heizkurve auf 10 gestellt
werden, wenn der Kreis nicht vorhanden/verwendet wird.
Ich verwende nur den gemischten Heizkreislauf.
ICh glaub der Drehregler hat einen Fehler, weil wenn ich auf "aus"
drehe, geht manchmal auch die Heizung nicht aus.
Werd ich nachmessen.
Zum Thema CAN. Ich habe mir dieses Modul gekauft :
http://spotpear.com/index/study/detail/id/137.html
Leider sehe ich nichts am BUS :(
Ich habe mich an den HMM gehängt (PIN2 = High, Pin4=GND, PIN6=Low),
Bitrate auf 10k, leider keine einzige Botschaft.
Ich hab mich an die Anleitung im Link gehalten, der Test (senden von
Can0 auf Can1 funktioniert), häng ich mich aber an die Heizung, sehe ich
leider nichts :(
Aus der Ferne schwer, ich weiß, aber irgendeine Idee was ich da falsch
gemacht haben könnte?
Zur Info,
ich hab alles nochmal installiert und diesen Teil weg gelassen, keine
Ahnung was die Zeile bewirken soll :
sudo ifconfig can0 txqueuelen 65536
Jetzt klappts :)
Nachrichten werden alle empfangen, jetzt gehts ans decodieren der
Mischer-Nachrichten.
Vielen Dank
Martin
Hallo Martin,
Frohes neues
sorry, bin momentan auf anderem Gebiet voll eingespannt. Gib jetzt Sinn.
10°C ist halt keine sinnvolle Einstellung, für Frostschutz zu hoch.
Mir steht halt auch nur eine TA250 zur Verfügung, die ich auch noch
nicht eingebaut habe, aus verschieden Gründen.
Habe wohl auch seit Jahren hier Pi 3 rumliegen. Ist aber nicht mein
Ding.
Verstehe auch nicht, das Ihr es Euch so schwer macht.
Hatte beruflich mit Can zutun und da reichen bei 10k 8Mhz vollkommen aus
um zu lesen. Erst wenn Du im Zeitrahmen [<50 ms] arbeitest und schreibst
solltest Du dich vom Ardunio Uno verabschieden.[dann Due, ST32 und
Teensy] Jahrelang den Arduino Uno mit 500k als Restbus im Fahrzeugbau
benutzt, wo bei MCP2515 notwendig ist. ESP32 macht natürlich wieder
Sinn. Aber evtl. ohne Can-bus aber über I2C Bus. Ist inzwischen mein
Ziel, fehlt mir aber noch viel Info.
Schau mal bitte auf Störungen auf dem Bus. Kay hat scheinbar einige
Can-Busfehler auf dem Bild, 0 Stellen. Der Can-bus braucht übrigens
immer GND.
Hatte bei den wenigen Messungen an meinen Ofen wahnsinnige Störungen
festgestellt beim schalten der Ventile und was sonst noch geschaltet
wird.
Bleibt gesund
Peter
Hallo Peter und restliche Community,
wünsche ebenfalls eine gutes neues Jahr!
Die Einstellung der Heizkurven ist für mich trotzdem noch komsich, in
der Bedienungsanleitung steht, wird ein Kreis nicht benötigt, sollen
10°C eingestellt werden.
Ich habe jetzt beide Heizkurven gleich eingestellt und jetzt
funktionierts:)
Einlesen aller Nachricht klappt jetzt sehr gut und stabil.
Ich verwende den Pi Zero, weil ich damit auch andere Dinge damit im
Heizhaus mache und da passt das einfach gut zusammen (Temperaturen
einlesen, etc..).
Aber Hauptgrund war der iobroker, als Slave liefert mir der die Daten
direkt in meine Hausautomatisierungs-Welt :)
Die Daten können dann mit dem CAN-BUS Adapter in den iobroker integriert
werden, parsen der Daten geht auch sehr einfach und komfortabel.
(Ging natürlich auch mit ESP und z.B. MQTT, aber in meiner Konfiguration
find ich es einfach praktischer).
Folgende IDs habe ich "entschlüsselt" :
440 ist VL Mischkreis
404 Pumpe Mischer
405 soll VL Mischkreis
407 Sparbetrieb aktiv
441 ist interessant, hat irgendwas mit dem Mischer selbst zu tun, aber
ich hab noch nicht herausgefunden was genau. Stellgröße?
schöne Grüße
Martin
Hallo zusammen,
ich bin gerade dabei meine existierende Therme von 1-2-4 analog und
raumtemperaturgesteuert auf CAN-Bus mit eigener Steuerung auf Basis des
BM1 umzubauen. Leider habe ich daher nicht den Luxus, einem
funktionierendem System zuzuhören zu können und muss direkt korrekt mit
der Therme sprechen.
Die Therme ist als Durchlauferhitzer mit Heizkreislauf ausgelegt (ZWN)
und funktioniert daher ähnlich wie bei Trabant.
Ich kann die Therme auf der Basis der hier veröffentlichten
Informationen steuern. Leider bleibt die Umwälzpumpe selbst bei
deaktiviertem Heizbetrieb ([0x250, 0]) weit in Betrieb. Weiß jemand wie
ich die Umwälzpumpe für die Nachtabsenkung zur Ruhe legen kann?
Bezüglich der CAN-ID, so kann ich Trabands Vermutung bestätigen, dass
0x20d vermutlich die nominelle maximale Heizleistung der Therme ist.
Ich vermute, dass CAN-ID 0x258 anzeigt, ob es sich um einen
Raumthermostat oder eine witterungsgeführte Steuerung handelt. Send ich
[0x258, 1], so sendet die Therme die Außentemperatur (0x207), wirft dann
aber auch den Fehler, dass kein Temperaturfühler anschlossen ist. Mit
[0x258, 0] wird diese Fehlermeldung unterdrückt.
Hallo Leute,
vielleicht hilft euch das weiter:
ID256=Uhrzeit 4 HEX Werte (1 Byte = Tag 1Montag / 7 Sonntag, 2 Byte =
Stunde, 3 Byte = Minute, 4 Byte = ????)
ID200=max.Vorlauftemperatur in Halbgradschritten Dez.120 = 60°C
ID201=aktuelle Vorlauftemperatur in Halbgradschritten Dez.120 = 60°C
ID204=max.Warmwassertemperatur in Halbgradschritten Dez.120 = 60°C
ID205=aktuelle Speichertemperatur Warmwasser in Halbgradschritten
ID206=Störungsmeldungen Hex Wert siehe ( Bedienungsanleitung )
00=Heizung OK
ID207=Außentemperatur in °C Hexadezimal Wert / 100 = 1/100 stel
ID209=Flamme EIN / AUS Wert 00 = Flamme AUS, Wert 01 = Flamme EIN
ID20A=Heizungspumpe EIN / AUS
ID20B=Speicherladung EIN / AUS
ID20C=Sommer / Winterbetrieb Wert=00 Sommer Wert 01=Winter
ID252=Sollwert von TA270 Heizungssollwert in Halbgradschritten
ID255=Sollwert von TA270 Warmwassersollwert in Halbgradschritten
ID404=Mischermodul ( Fußbodenheizung ) Bedeutung ?????
ID405=Mischermodul ( Fußbodenheizung ) zweites Byte ist immer 1 (Adresse
HMM/HSM), erstes Byte Temperatur in Halbgradschritten
ID415=Mischermodul ( Fußbodenheizung ) Bedeutung ?????
ID416=Mischermodul ( Fußbodenheizung ) zweites Byte ist immer 1 (Adresse
HMM/HSM), erstes Byte Temperatur in Halbgradschritten
ID417=Mischermodul ( Fußbodenheizung ) Bedeutung ?????
ID418=Mischermodul ( Fußbodenheizung ) Bedeutung ?????
ID440=Mischermodul ( Fußbodenheizung ) erstes Byte ist immer 1 (Adresse
HSM), zweites Byte Mischertemperatur Istwert in Halbgradschritten ?
ID441=Mischermodul ( Fußbodenheizung ) erstes Byte ist immer 1 (Adresse
HMM), zweites Byte Reglerausgangssignal in Prozent ?
ID4F9=Mischermodul ( Fußbodenheizung ) Bedeutung ?????
ID25A=erstes Byte ist immer 1 (Adresse HMM/HSM), zweites Byte Temperatur
in Halbgradschritten
ID220=zweites Byte ist immer 1 (Adresse HMM/HSM), erstes Byte Temperatur
in Halbgradschritten
Hallo,
@Matthias: ich bin mir sicher, dass die nicht abgeschaltet werden kann.
Genau so wie die Tatsache, dass Du keine moderne Pumpe einbauen kannst.
Der große Stromverbraucher und Krachmacher!!
Gruß
Peter
Hallo nochmals,
den letzten Absatz verstehe ich nicht?
Du hast BM1 eingesteckt und kein Außenfühler, kein Bedienteil nur eine
externe Beschaltung über den Can-Bus und schickst alle wichtigen Daten
an die Therme?
Ich sehe allgemein "eine witterungsgeführte Steuerung" als Ta211E bzw.
TA250 und TA270 beziehen sich natürlich auch auf diese Führung. Du
benutzt diese aber nicht?
Die Selektion der einzelnen Schaltungen TA211 bzw. BM1 wird meiner
Meinung über verschiedene Spannungsversorgungen im Stecker ST1
realisiert und bleibt auf der Hauptplatine bzw. der Servicefunktion.
TA211 kommuniziert über eine 8/1 kanalige Spannungs/Frequenz
Schnittstelle und BM1 über I2C in ein gemeinsames RAM des BM1. Da ist
nichts gemeinsames.
Zur Info: In diesem Ram müsste eigentlich ein Daten_Abbild der Therme
liegen.
Ich sehe hier 0x258 in einer anderen Funktion gebunden. Vielleicht
Selektion der Temperaturwerte. [0...1-x].
Peter
Hallo Peter,
vielen Dank für deine Infos, das ist ja auch sehr spannend mit dem RAM.
Du hast das richtig verstanden, ich wollte die Therme komplett steuern,
ohne ein Bedienteil. Die interne Pumpe in der Therme hatte sich aber mit
der alten Regelung sehr wohl abgeschaltet.
Ich habe inzwischen für 20Euro einen TA270 erstanden und dazwischen
einen RaspberryPi mit zweikanaligem CAN Ports dazwischen geklemmt [1].
Da es sich dabei um einen witterungsgeführten Regler handelt, sendet er
wie postuliert die [0x258, 0x1], was denn aufgrund des nicht
angeschlossen Außenfühlers den Fehler CC hervorruft. Ich modifiziere
daher die Nachricht zu [0x258, 0x0], wodurch der Fehler an der Therme
verschwindet. Die aktuelle Temperatur berichte ich dem TA270 per 0x207
und einer Abfrage der Temperatur im Internet. Das funktioniert prächtig.
Der Regler schaltet auch die Pumpe aus, z.B. wenn die Heizung auf "Aus"
steht. In diesem Fall wird [0x253, 0x1] gesendet. Ist die Heizung in
Betrieb, so sendet der Regler [0x253, 0x0]. Der Befehl war zuvor hier
als Speichertemperatur dekodiert worden, was an meiner Durchlauf-Therme
natürlich nicht sinnvoll war und ich daher natürlich nicht versucht
hatte. Das Kommando 0x253 ist also eher ein "Interne Pumpe deaktivieren"
Kommando.
[1] https://www.waveshare.com/2-ch-can-hat.htm
Hallo,
für 20 Euro....ahhh.
Natürlich, wenn ich die Heizung ausschalte wird auch die Pumpe
ausgeschaltet.
Telegrammtechnisch sieht es aber so aus, das so ein "an" "aus" Telegramm
entsteht (evtl. ein flattern v. induktiven Lasten). Du bist
wahrscheinlich noch innerhalb des Timeouts, das es so funktioniert.
Ich halte es für sehr gefährlich die Pumpe auszuschalten. Ich habe es
noch nicht kontrolliert, aber ich meine gelesen zu haben das die Pumpe
auch beim Warmwasserdurchlauferhitzer also höchste Leistung zur Kühlung
läuft.
Ich hatte ähnliche Gedanken wie Du und wollte auch nur BM1 benutzen,
aber TA211 weit benutzen, als Ausfallschaltung und glaubte das beide
eine gemeinsame Schnittstelle haben was aber nicht der Fall ist.
So glaubte ich auch das TX RX die gemeinsame Schnittelle ist. Die ist
sogar vorhanden, aber nur zwischen CPU und Treiber. Die eigentliche
Schnittstelle ist aber I2C für BM1. Ich glaube H.Joachim S. hat
diesbezüglich mal separat was geschrieben. Er hatte ein RAM defekt,
vielleicht weis er noch die Geschwindigkeit der Schnittstelle. Aber über
WLAN währe das der direktere Weg. Aber halt viel messen, "am offenen
Herz" und viel Zeit notwendig.
Es wird hier immer von Regler gesprochen. Ich habe weder in der
Beschreibung noch in der Funktion den Regler gesehen. Der TA...und BM1
ist nur ein Bedienteil bzw. eine Schnittstelle zum Regler
(Außenfühler--Hauptplatine).
Die Can-Bus Karte find ich nicht schlecht, kannte ich nicht. Leider
etwas überholt. MCP2517/18 beinhaltet 2.0 und FD, Fifo und 32 Filter.
Aber hierfür vollkommend ausreichend.
! Hast Du schon mal überlegt einen Außenfühler zu simulieren, der für
deine Funktion sinnig ist. Ein Widerstand!
Gruß
Peter
Peter schrieb:> Es wird hier immer von Regler gesprochen. Ich habe weder in der> Beschreibung noch in der Funktion den Regler gesehen. Der TA...und BM1> ist nur ein Bedienteil bzw. eine Schnittstelle zum Regler> (Außenfühler--Hauptplatine).
Doch, der TA270 ist ein Regler. Der ermittelt aus Aussentemperatur,
Heizkurve und Raumtemperatur die erforderliche Vorlauf(Soll)temperatur.
Die Heizungsthermostate in dem Raum in dem sich der Regler befindet sind
komplett geöffnet.
Das funktioniert sehr gut, solange der Kamin als zusätzliche Heizquelle
nicht in Betrieb ist. Brennt der Kamin, geht durch steigende
Raumtemperatur die Vorlauftemperatur runter, was dann im Rest des Hauses
zu mangelnder Wärme führt. Dann stell ich die Raumtemperatur auf 23° und
alles passt wieder.
Hallo,
nun ich will mich gerne belehren lassen, aber Du beschreibst hier nur
den Regelprozess nicht den Beweis, dass der TA211, TA250 oder TA270
Regler sind und das der nur "eine.." Stellgröße an die Therme weiter
gibt.
H.Joachim S. schrieb:> Doch, der TA270 ist ein Regler. Der ermittelt aus Aussentemperatur,> Heizkurve und Raumtemperatur die erforderliche Vorlauf(Soll)temperatur.> Die Heizungsthermostate in dem Raum in dem sich der Regler befindet sind> komplett geöffnet.
Die verschiedenen Temperaturen sind alles Führungsgrößen und der
"Regler" folgt der Leittemperatur(Solltemperatur) im Raum des
Bediensungsteil des TA 270 falls vorhanden. Eine Ermittlung der
Temperatur gehört nicht allgemein zum Regelprozess. Du gibst nur die
Führungsgrößen und Sollgrößen weiter--> Eingangsgrößen.
Eine Heizkurve kannst Du auch mit dem TA211E vorgeben, genau so als ob
Du den TA270 benutzt und auch die Raumtemperatur!!
Halt, nicht so bequem wie beim TA270. Aber suche dort mal nach einem
Regler, ok es könnte auch nur ein OP sein. Aber der TA 211 besitzt
keinen Regler in diesem Sinne. Er übergibt genau so seine Daten an die
Hauptplatine wie ein TA270. Nur über eine andere Schnittstelle und
einige Impulse. Weiterhin hat das Bedienteil TA250 und TA270 nur noch
die Möglichkeit Einstell_Daten zurückzugeben (anzeigen INFO).
H.Joachim S. schrieb:> Das funktioniert sehr gut, solange der Kamin als zusätzliche Heizquelle> nicht in Betrieb ist. Brennt der Kamin, geht durch steigende> Raumtemperatur die Vorlauftemperatur runter, was dann im Rest des Hauses> zu mangelnder Wärme führt. Dann stell ich die Raumtemperatur auf 23° und> alles passt wieder.
Deine Beschreibung sagt, dass deine Therme (Regler) funktioniert und die
Störgröße Kamine nicht erkennen kann. Deine Manipulation der Soll
Raumtemperatur kann nur höher als normal sein, darf ich das so
verstehen, ansonsten kann es nicht hinhauen.
Vielleicht kannst Du bei Kaminbetrieb den Raumfühler ausschalten oder
von wo anders zuführen (CAN-Bus).
Nochmals zurück zur Annahme:
Wenn der TA270 oder TA250 ein Regler ist wo ist das Regler_Telegramm
Stellgröße keiner hat es bis jetzt aufgezeichnet. Es sollte schnell und
regelmäßig kommen und sicher mehrere Byte haben.
Wenn BM1 der Regler ist wieso funktioniert die Therme auch ohne TA250
oder TA270 nur mit Arduino..RaspberryPi bzw. nur mit TA211E.
Nein, das überzeugt mich nicht, der eigentliche Regler ist hier auf der
Hauptplatine.
Aber nur meine Meinung und der endgültige Beweis währe dann der
Telegrammverkehr Hauptplatine <--I2C--> BM1. Aber 50% davon ist der
Beweis das der TA211 "kein" Regler ist und die Therme funktioniert.
wie auch immer bleibt gesund!!
Peter
Ich glaube, wir haben grundlegend unterschiedliche Auffassungen vom
Regler.
Der Knackpunkt, der deine Argumentation ins Nirwana befördert: die
aktuelle Raumtemperatur als eigentliches und einziges Regelziel wird
überhaupt nicht zur Therme geschickt. Das wäre ja wohl
Grundvoraussetzung für eine irgendwo anders sitzende Heizungsregelung.
Aber nein - es wird nur eine aktuell erforderliche Vorlauftemperatur als
Sollwert an die Therme geschickt. Natürlich befindet sich da auch wieder
ein Regler, der aber nichts anderes macht, als zu versuchen die extern
angeforderte Temperatur zu liefern.
Peter schrieb:> Es sollte schnell und> regelmäßig kommen und sicher mehrere Byte haben.
Gibts irgendeinen nachvollziehbaren Grund, warum das so sein sollte?
Peter schrieb:> Wenn BM1 der Regler ist wieso funktioniert die Therme auch ohne TA250> oder TA270 nur mit Arduino..RaspberryPi bzw. nur mit TA211E.
Kein Mensch hat je behauptet, das BM1 sei ein Regler.
Die Therme möchte von irgend jemandem auf irgendeinem Weg einen
plausiblen Sollwert, und dieser jemand sollte ein Regler sein, damit
das Ziel einer Heizung (irgendwas sinnvoll beheizen) erreicht werden
kann.
Ich könnte es dir vormachen: die CAN-Botschaft vom TA270 "Sollwert
Vorlauf = xyz" rausfischen und durch "Sollwert Vorlauf = 60°" ersetzen,
weiter nichts ändern. Sommer oder Winter, Heizkurven, Raumtemperatur -
alles egal: die Therme liefert 60° warmes Wasser (so es denn
physikalisch möglich ist und keine Sicherheitsbedenken entgegen stehen).
Hi,
keine Sorge es gibt Hilfe, Scherz. :-)
H.Joachim S. schrieb:> Ich glaube, wir haben grundlegend unterschiedliche Auffassungen vom> Regler.
Ja...https://de.wikipedia.org/wiki/Regler dem folge ich.
H.Joachim S. schrieb:> Der Knackpunkt, der deine Argumentation ins Nirwana befördert: die> aktuelle Raumtemperatur als eigentliches und einziges Regelziel wird> überhaupt nicht zur Therme geschickt.
Wer hat denn das gesagt?, du hast doch das beste Beispiel gebracht, dass
die Raumtemperatur aufgeschaltet werden kann.
Hmmm... meine Heizung ist nur dafür da mich warm zu halten bzw. die
nötige Raumtemperatur zu erbringen.
Zitat: TA270 Betriebsanleitung:
"Mit Raumtemperaturaufschaltung wird den
Drehknöpfen „Heizen“ (k) und „Spartemperatur“
(m) ein Raumtemperaturwert als Sollwert zugeordnet."
oder
H.Joachim S. schrieb:> Brennt der Kamin, geht durch steigende> Raumtemperatur die Vorlauftemperatur runter, was dann im Rest des Hauses> zu mangelnder Wärme führt. Dann stell ich die Raumtemperatur auf 23° und> alles passt wieder.
Was ist eine Witterungsgeführte Heizungsanlage! oder Regler!!
Witterungsgeführte: Heizkurve, Kennlinie oder früher Kennfeld genannt
wenn es so war. Junkers hat eine Heizlinie aber keine Kurve. Sie wird
von Hand festgelegt aus dem Fußpunkt min. und der max. Vorlauftemperatur
max. zur Außentemperatur. Parallelverschoben durch den, nennen wir ihn,
Hauskoeffizienten oder dem "Raumbedarf". Aus dieser Tabelle oder diesem
Graf wird ein evtl. zutreffender Wert zur Außentemperatur der aktuellen
Vorlauftemperatur entnommen und an den Regler "gesendet". Ich lasse mal
den Ort, von wo das geschieht, unerwähnt. Dieser oder diese Regler mit
Stellglieder und Temperaturfühler stellen die Vorlauftemperatur ein.
H.Joachim S. schrieb:> Kein Mensch hat je behauptet, das BM1 sei ein Regler.> Die Therme möchte von irgend jemandem auf irgendeinem Weg einen> plausiblen Sollwert, und dieser jemand sollte ein Regler sein, damit> das Ziel einer Heizung (irgendwas sinnvoll beheizen) erreicht werden> kann.
Unter TA270 kannst Du beides zusammen kaufen! ..Nein, ich habe den BM1
damit auch ausgeschlossen. Der BM1 ist eine 3fach Schnittstelle und mit
Außenfühlereingang.
Nein,... der Sollwert ist doch die Vorlauftemperatur aus der Heizkurve.
f(Außentemperatur)+ des Hauskoeffizienten...
H.Joachim S. schrieb:> Ich könnte es dir vormachen: die CAN-Botschaft vom TA270 "Sollwert> Vorlauf = xyz" rausfischen und durch "Sollwert Vorlauf = 60°" ersetzen,> weiter nichts ändern. Sommer oder Winter, Heizkurven, Raumtemperatur -> alles egal: die Therme liefert 60° warmes Wasser (so es denn> physikalisch möglich ist und keine Sicherheitsbedenken entgegen stehen).
Nun, auch wenn es jetzt nicht hierhingehört, wie machst Du das einen
Wert herausfischen und einen anderen senden. Hast Du wirklich eine
CAN-Bus Relay-Station aufgebaut?
Nochmals Du schickst dem Regler den Sollwert 60°C über Can und sollte er
nicht schon 60°C haben wird er tätig in der Therme.
Frage: Was passiert, wen er nicht wiederholt wird. Wird er wieder
überschrieben?!
Peter
Ich merk schon, du willst nicht. Vielleicht kannst du auch nicht.
Desqwegen mag ich auch nicht mehr versuchen dir das beizubringen.
Kläre für dich nochmal ganz neutral 3 einfache Überlegungen:
-wie schafft es die Therme in meinem Leitraum die gewünschte Temperatur
einzustellen und zu halten, ohne weder die gewünschte Temperatur noch
die aktuelle Temperatur zu kennen?
-warum geht die Vorlauftemperatur in den Keller wenn ich den Kamin
anzünde?
-warum geht die Vorlauftemperatur hoch, wenn ich lüfte? (nein, ich drehe
die Heizung nicht runter dafür, auch wenn das Energiesparfüchse
empfehlen)
Die Antwort auf diese 3 Fragen wird dich dahin führen: der TA270 ist der
eigentliche Regler des Systems. Angeforderte Vorlauftemperatur als
Ergebnis aller bekannten und relevanten Daten.
Peter schrieb:> Nun, auch wenn es jetzt nicht hierhingehört, wie machst Du das einen> Wert herausfischen und einen anderen senden. Hast Du wirklich eine> CAN-Bus Relay-Station aufgebaut?
Nicht dafür, aber sowas benutze ich oft. Kann man im Auto und auch sonst
öfters gebrauchen.
Peter schrieb:> Frage: Was passiert, wen er nicht wiederholt wird. Wird er wieder> überschrieben?!
Natürlich gibts dann irgendwann einen Eingriff seitens der Therme a la
timeout. Das ist aber nicht Teil der Temperaturregelung sondern
übergeordnete Sicherheit wie vieles andere auch, was im störungsfreien
Normalbetrieb aber niemals zur Auslösung kommt.
Und jetzt habe ich fertig hier.
Schade!!
Schade der erste Satz ist Beleidigend!
Der Zweite ist im höchsten Maße arrogant! Kenne ich ja schon!!
Daran solltest Du arbeiten. Vielleicht klappt es es ja irgendwann mal.
---------------------------------------------------------------------
H.Joachim S. schrieb:> -wie schafft es die Therme in meinem Leitraum die gewünschte Temperatur> einzustellen und zu halten, ohne weder die gewünschte Temperatur noch> die aktuelle Temperatur zu kennen?
Ich gehe mal davon aus, das Du den Beitrag von gestern gelesen hast oder
zu mindestens überflogen. Da steht der Hinweis Betriebsanleitung TA270
Seite 37
3.7.11 Raumtemperaturaufschaltung
wählen (RA-Mode aus +/- oder
MRA-Mode aus +/-)
Mit anderen Worten Du stelltest die Temperatur mit Heizen (k) ein. Der
Raumfühler ist im TA270 und hast Du die Parallelverschiebung verstanden
wirst Du auch den Satz der Bedienanleitung verstehen, der lautet:
Mit Raumtemperaturaufschaltung wird den
Drehknöpfen „Heizen“ (k) und „Spartemperatur“
(m) ein Raumtemperaturwert "als Sollwert" zugeordnet. Die
Parallelverschiebung in Plus wenn es wärmer wird und minus wenn es
kälter werden soll [Sollwert!!!]. Da zu brauchst Du kein Regler, sondern
es ist "die" neue VLT für den Regler. Die neue VLT wird über CAN-Bus
und BM1 "an" den Regler der Terme geschickt .
Schalte den Temp-Sensor doch aus und prüfe die VLT!!!
H.Joachim S. schrieb:> -warum geht die Vorlauftemperatur in den Keller wenn ich den Kamin> anzünde?
Weil die Vorlauftemperatur durch den Raumfühler reduziert wird. (Minus)
und dieser Wert wird wiederum über CAN an die Therme geschickt.
H.Joachim S. schrieb:> -warum geht die Vorlauftemperatur hoch, wenn ich lüfte? (nein, ich drehe> die Heizung nicht runter dafür, auch wenn das Energiesparfüchse> empfehlen)
Weil die Vorlauftemperatur durch den Raumfühler addiert wird. (PLus) und
dieser Wert wird wiederum über CAN an die Therme geschickt.
Da ist ein NTC in einer Brücke zu +5V, ein ADC der das liest und den
Wert addiert oder subtrahiert von der ermittelten Vorlauftemperatur der
Heizlinie.(einfach)
Frage Dich doch mal warum werden Daten auf den CAN-Bus gelegt???
!! Damit alle Spinner wie wir sie abgreifen können? Kennst Du Bosch???
!! Damit die Therme unnötige Daten bekommt, die sie gar nicht braucht
und Bosch schon immer sowas bauen wollten und sich bezahlen lässt.
!! Oder weil die Therme sie braucht.
H.Joachim S. schrieb:> Nicht dafür, aber sowas benutze ich oft. Kann man im Auto und auch sonst> öfters gebrauchen.
Nun, ein CAN-Bus Telegramm bekommen grundsätzliche alle Teilnehmer!!
Eine Relay-Station ist möglich, aber eher nicht mit Arduino und Co.
Sorry..aber Du schickst nun mal zwei Telegramme der gleichen ID mit
unterschiedlichem Inhalt. aber egal, das letzte wird evtl. aktiv oder er
verwirft beide.
Querdenker finde ich gut, aber der Respekt sollte schon im Geist
verankert sein.
Danke
Peter
Peter schrieb:> Weil die Vorlauftemperatur durch den Raumfühler reduziert wird. (Minus)> und dieser Wert wird wiederum über CAN an die Therme geschickt.Peter schrieb:> Weil die Vorlauftemperatur durch den Raumfühler addiert wird. (PLus) und> dieser Wert wird wiederum über CAN an die Therme geschickt.
Nicht so einfach addiert/subtrahiert, aber im Prinzip ja. Und genau das
ist die Regelfunktion.
Und wie man sich korrekt in einen CAN-Bus einklinkt und dort nach
Belieben werkeln kann kannst du mir schon zutrauen. Und das ist absolut
entspannt mit einem ATMega + 2x MCP2515 zu machen, Langeweile pur. So
was habe ich vor 10 oder 15 Jahren mal hier vorgestellt.
Inzwischen nehme ich dafür natürlich Controller mit 2 CAN-Einheiten.
Aber um die Sache hier zu beenden: ich gebe dir in allen Punkten zu 100%
recht.
Oh je, da ist man einmal kurz weg, und schon schlagt ihr euch die Köpfe
ein.
Hier einige Fakten, aus eigener direkter Beobachtung und basierend auf
öffentlicher Dokumentation:
* Die Therme hat natürlich intern auch eine Regelung, so dass die über
CAN vorgegebene Vorlauftemperatur im Mittel gehalten wird. Ein typisches
Regelverhalten, wie ich es auch beobachte, findet sich in [1]. Die
Therme intern will hier aber wirklich keiner direkt beeinflussen, soweit
ich das sehe ist das auch über CAN nicht möglich. Es geht vielmehr darum
die Vorlauftemperatur etc. zu setzen, auf welche die Terme dann ihre
Heizleistung regelt.
* Natürlich schaltet ein „Pumpe aus“-Befehk, die Pumpe nicht direkt und
unumstößlich aus. Vielmehr ist es ein „Kein Zirkulationspumpenbedarf“
Meldung. Sollte die Therme aus irgendwelchen Gründen die Pumpe
benötigen, so läuft diese natürlich weiter. Es bringt natürlich nichts,
den Heizkreis weiter zu zirkulieren, falls die Heizanforderung
ausgeschalten ist, und damit nicht auf die Vorlauftemperatur geregelt
wird. In diesem Fall kann die Zirkulation mit dem Befehl 0x253
deaktiviert werden. Ein reines Deaktivieren der Heizanforderung
deaktiviert nicht die Zirkulationspumpe. Ich nehme an, das eine
getrennte Steuerung auch für den Frostschutz benötigt wird.
* Der TA270 berechnet die Vorlauftemperatur der Heizung auf Basis der
Außenwerte und optional eines Innenraumfühlers. Die Außentemperatur
bekommt er dazu durch den BM1 per CAN Telegramm gemeldet. Am Ende kommt
aus dem TA270 eine Vorlauftemperatur – und gut ist. (Okay etwas mehr wie
Warmwasser, Mischer und optional Speicher, aber ihr versteht schon.)
* Natürlich könnte man auch einfach einen Widerstand für den Außenfühler
simulieren, aber meine Lösung ermöglicht auch das Mitschneiden der
Heizungsparameter in eine InfluxDB Datenbank mit Visualisierung in
Grafana. Da kann man dann auch einfach noch die Außentemperatur
mitsenden und gut ist. Die Fehlermeldung, dass kein Außenfühler
angeschlossen ist, lässt sich dann wie benannt unterdrücken.
[1]
https://wiki.volkszaehler.org/_detail/hardware/channels/heating_control/can-vz.png?id=hardware%3Achannels%3Aheating_control%3Agastherme_junkers_can_bus
Hi,
ich sehe es wohl auch nicht so, aber
er hätte wohl mal wieder für mehrere Monate geschmollt.
Nun, die Sprache der Technik ist halt nicht jedermanns Sache.
Verlangt ja auch keiner.
Tolle Arbeit..
Aber das ""auch" eine Regelung" habe ich durchaus mit Interesse gelesen.
Wir reden hier über die Therme und dessen Regelung und ob die Regelung
durch das TA270 geschieht oder nicht. Eine Regelung bezogen auf die
Therme existiert in der TA270 nicht. Ein Spannungsregler 24V auf 5V
ok.....
Die Zuweisung der Vorlauftemperaturvorgabe an die Therme ist die
Sollvorgabe des Reglers der Therme und die Vorlauftemperaturwert ist der
Wert der Rückkopplung des Reglers.
Was bitte soll sonst noch geregelt werden.
Medium : Wasser
Soll: VLT Vorgabe
ist: VLT_Sensor
Regelung-> Wassertemperatur
Stellglied Brenner (P)....
Ist das aus meinen Sätzen so schwer zu verstehen?
Die TA 270 ist bleibt ein Bedien_Eingabe_teil für den Kunden.
Peter
Hallo zusammen!
Zunächst möchte ich mich bei allen Beteiligten für die Vorarbeit
bedanken!
Ich habe inspiriert durch diesen Thread meine ZSR 24-6 mit BM1 und TA270
aufgerüstet. In diesem Schritt natürlich dann auch gleich den
Außentemperaturfühler mit nachgerüstet. Die Vorbesitzer haben bei allem
gespart... Ich muss zugeben dieses Upgrade hätte ich schon viel früher
machen sollen. Jetzt hoffe ich natürlich auch zusätzlich zu der
"Spielerei" eine entsprechende Ersparnis zu erzielen...
Angezapft habe ich die Therme mit einem ESP32 und einem MCP2515 +
TJA1050 Can-Bus Modul ("NiRen"), welches ich auf 16MHz "geupgraded"
habe. Leider schlug die Kommunikation mit dem eingebauten Can-Bus und
einem SN65HVD230 fehl - es kam nichts an.
Übrigens ist es nicht notwendig bei dieser Kombination aus MCP2515 und
TJA1050 5v von 3v3 zu trennen. Der Transceiver auf diesem Modul arbeitet
mit der Spannung des Bus während der MCP immer mit dem Signalpegel von
VCC arbeitet. So setze ich das in meinem Auto mit einem Arduino Due
schon jahrelang ein und es zerfetzt nicht den IO. Seltsamerweise
arbeitet der CAN von meiner Therme allerdings mit 3v3. Kabellänge ist ca
1.5 Meter - habe CAT6 Verlegekabel benutzt.
Ich kann bestätigen, dass 20D die Leistungsstufe, so nenne ich sie mal,
angibt. Bei mir ist dieser Wert nämlich konstant 24.
Das Programm habe ich dann mit etwas MQTT, NTP und WiFi aufgepeppt. Ich
melde mich die Tage nochmal zurück mit dem Github Repository wo alles
drin liegt. Muss vorher noch etwas aufräumen und optimieren...
Hallo,
willkommen!
berichtige mich, aber wie kommst Du an die Daten, wenn es nicht
funktioniert?
Dave schrieb:> Übrigens ist es nicht notwendig bei dieser Kombination aus MCP2515 und> TJA1050 5v von 3v3 zu trennen. Der Transceiver auf diesem Modul arbeitet> mit der Spannung des Bus während der MCP immer mit dem Signalpegel von> VCC arbeitet. So setze ich das in meinem Auto mit einem Arduino Due> schon jahrelang ein und es zerfetzt nicht den IO. Seltsamerweise> arbeitet der CAN von meiner Therme allerdings mit 3v3. Kabellänge ist ca> 1.5 Meter - habe CAT6 Verlegekabel benutzt.
NiRen hat doch nur VCC und der TJA1050 ist nicht für 3,3 V zugelassen.
DUE & ESP32 ist 3,3 V; MCP2515 verträgt beides und CAN-Bus würde ich
nicht unter 5V betreiben. Die Möglichkeit ist eher für unterschiedliche
CPU's gedacht. Bei 10k ist CAT6 super, allerdings sollten "beide" Kabel
(+ GND) umeinander verdrillt sein. Aber bei 10 k ist hier nichts zu
befürchten. Hier gibt es auch Vorschriften wie Umdrehung pro Länge (im
Automotivbereich). BM1 funktioniert sogar mit nur CAN-High mein BM1 hat
auch den TJA1050 und 5V.
Vielleicht stimmen aber auch deine Zeiten nicht mehr von 8 auf 16MHZ
ohne Abgleich. Warum bei 10k? geht der ESP schlafen.
Peter
Danke, Peter!
> berichtige mich, aber wie kommst Du an die Daten, wenn es nicht> funktioniert?
Es funktioniert leider nicht mit dem SN65HVD230. Das wäre viel eleganter
gewesen aber ich meine irgendwo gelesen zu haben, dass aufgrund
irgendwelcher seltsamer Zusammenhänge der ESP eh nicht niedriger als 10k
takten kann. Das ist aber reine Spekulation.
Tatsächlich funktioniert das alles super über SPI mit dem ESP32, MCP2515
und TJA1050. Damit hab ich mir auch schon selbst Platinen gelötet.
Witzigerweise verbaut auch BMW genau dieses Gespann in manchen Geräten -
beispielsweise im iDrive Knopf in der Mittelkonsole.
Ich hätte vielleicht noch vor schicken sollen, dass ich Informatiker bin
und reiner Hobbyist, wenn es um Elektronik geht. Ich kriege ein paar
Sachen selbst hin und Datenblätter verstehe ich auch ausreichend um
nicht zu viel Geld durch hochgejagte Komponenten zu verbraten :)
Daher habe ich natürlich auch zum Netzwerkkabel gegriffen, weil man das
so herumliegen hat und da auch die Spannung sehr gut in den
Spezifikationen liegt.
> NiRen hat doch nur VCC und der TJA1050 ist nicht für 3,3 V zugelassen.> DUE & ESP32 ist 3,3 V; MCP2515 verträgt beides und CAN-Bus würde ich> nicht unter 5V betreiben.
Genau... VCC vom TJA sollte zwischen 4,75 und 5,25 liegen. Gibt man ihm
3,3 arbeitet er trotzdem zuverlässig. Irre oder?
Aktuell und in meinen sonstigen Designs fahre ich dieses Gespann wie ...
papierraschel ... nach Vorschrift - siehe Anhang :)
> BM1 funktioniert sogar mit nur CAN-High mein BM1 hat> auch den TJA1050 und 5V.
Also wie beim CAN im Auto. Interessant. Muss aber dafür das gleiche
Potenzial haben oder?
Was ich mit meinem begrenzten Arsenal nicht herausfinden kann ist warum
der Bus nur 3-4v liefert aber da alles sauber funktioniert bin ich
erstmal arglos. Vielleicht hat auch der TA einen weg und zieht die
Leitung runter... oder mein Multimeter misst Mist. Mehr als das habe ich
ohnehin nicht zum Diagnostizieren.
Naja...werde jetzt erstmal weiter den Code organisieren und auch mal
testen ob das vielleicht ohne TA270 überhaupt läuft. Bei den aktuellen
Außentemperaturen kann man ja ruhig mal die Heizung kurz lahm legen ;)
Hallo Dave,
Dave schrieb:> Es funktioniert leider nicht mit dem SN65HVD230. Das wäre viel eleganter> gewesen aber ich meine irgendwo gelesen zu haben, dass aufgrund> irgendwelcher seltsamer Zusammenhänge der ESP eh nicht niedriger als 10k> takten kann.
Der ESP hat damit überhaupt nichts zu tun. Der MCP2515 ist dein
Kontroller und nicht der ESP. Das sind zwei verschiedene Schuhe. Deine
Einstellung des MCP (lib)und dessen Quarz (Datenblatt) gegeben darüber
Auskunft ob es hinhaut.
Dein CAN-Bus Platine war NiRen Du musst weg von deiner 3V3 Einstellung
die ist falsch. 5V für den CAN-Bus Treiber, 5V oder auch 3V3 für CPU &
MCP, schau Dir das CAN-Bus Signal mal an WIKI. Und Du hast teilweise
eine Masseverschiebung besonders im Fahrzeug, aber auch wenn ein
Ventil,... in der Therme schaltet.
Verstehe das mit dargestellten Schaltung nicht, ist das deine eigene
Schaltung? Es fehlt der Abschlusswiderstand, der wird wohl nicht immer
benötigt, wenn Du 2 hast (je nach Aufbau, manchmal ist es besser einen
3. zu berücksichtigen).
Dave schrieb:> Witzigerweise verbaut auch BMW genau dieses Gespann in manchen Geräten -> beispielsweise im iDrive Knopf in der Mittelkonsole.
Ich glaub der SN65HVD230 ist mir während meiner früheren Arbeit nur
einmal untergekommen. Meine Erfahrung mit BMW ist das ganze Gegenteil.
Ein MCP nie, viel zu viel Aufwand. Der CPU_Port& CanTreiber & ESD
beschaltung fertig. Das ein CAN-Bus im Automotiv. Ein TJA1050 vielleicht
bis 2005, ist uralt und so auch deine Heizungselektronik. Davon musst Du
ausgehen.
Ich habe immer Netzwerkkabel benutzt, weil ich auch immer Watterott
Platinen benutze. Einfach, aber solide und einstellbar.
Nun das, mit dem einen CAN-Bus Kabel möchte ich so nicht stehen lassen
das klappt hier bei mir unter bestimmten Voraussetzung (lesen), aber
nicht unbedingt im Fahrzeug.
Dave schrieb:> Genau... VCC vom TJA sollte zwischen 4,75 und 5,25 liegen. Gibt man ihm> 3,3 arbeitet er trotzdem zuverlässig. Irre oder?> Aktuell und in meinen sonstigen Designs fahre ich dieses Gespann wie ...> papierraschel ... nach Vorschrift - siehe Anhang :)
Nun, zu bedenken ist! Es klappt doch nicht oder?
Mit einen Multimeter exakt VSS messen??
https://wolles-elektronikkiste.de/dso-138-ein-einsteiger-oszilloskop
Eine zusätzliche Diagnose hast Du noch, deine TA der sagt Dir ob Du ein
CAN-Bus Fehler hast. Ein Fehler der Pegel ändert ganz sicher.
Peter
Da liegt ein Missverständnis vor. Ich habe Kommunikation mit dem MCP+TJA
trotz "nur" 3,3v. Keine Busfehler.
Ich hätte es aber gerne mit dem SN65HVD230 Transceiver und dem internen
Controller des ESPs gelöst. Stört mich aber nicht also werde ich eine
Platine dafür entwerfen, damit das nachher sauber aussieht.
Neue Erkenntnisse:
0x0F9 wird nach 0x255 spätestens alle 30 Sekunden ohne Daten gesendet.
Das ist eine Nachricht die vom "Bedienteil", so nenne ich es mal, kommt.
Ich vermute hier das Ende der Schrittkette.
Außerdem sendet der Controller in der Heizung die Daten in einem Rutsch
raus während das Bedienteil anscheinend so etwas wie eine Schrittkette
durchläuft.
Ich bin gerade dabei das Programm so weit auszubauen, dass
beispielsweise Home Assistant als Leitsystem die Vorgaben macht anhand
dann die Temperaturen vom MC auf den Bus gebracht werden. Kaputt machen
kann man ja nix, da die Steuerung der Heizung offensichtlich immer die
Oberhand hat und man nur Wünsche an diese äußern kann...
Hallo,
dann ist ja gut.
ICH habe mir das Datenblatt mal kurz angesehen, ich nehme an das sind
unterschiedlichen Pegel.
Wenn es interessiert.[TA250]
Ein Scan ohne Heizung und begrenzt auf 13.. leider.
ID; ext; RTR; len; Data1...8; z-Time
Letzte Spalte sind Zykluszeiten.
hoffe die Datei wird angezeigt.
Peter
Wunderbar - Danke Peter!
Also das war jetzt ein Versuchsaufbau wo der TA alleinig am Bus hing?
Das würde ja bedeuten, dass deutlich mehr Parameter zur Heizung
geschickt werden als angenommen... Das ging nicht so ganz klar aus den
verteilten Informationen hier aus dem Thread hervor.
Um etwas Ordnung in das Konvolut zu bringen habe ich die folgende
Tabelle erstellt, an der sich jeder frei beteiligen kann:
https://docs.google.com/spreadsheets/d/1JzmhEbFY_GSk0Dl_e5pb2zmsy9EPlQU7bUpb9bXKxCM/edit?usp=sharing
Hinweis:
- Controller: Damit ist der Controller im Heizgerät gemeint
- RC: TA/TR "Remote Control" nenne ich es.
Hallo,
genau, der Schreibtischtest!
Allerdings ohne Abschluss des I2C und ich würde das "noch nicht" so
behaupten können.
Weil ich nehme an, wie schon mal geschrieben, dass der I2C Speicher
Übergabepunkt ist. Das BM1 und das TA250 ihre eigene Sache machen und
die aktuellen Daten im Speicher stehen und das die Heizung sich die
Daten holt wann immer sie die benötigt. Das heißt aber auch das Daten
aus dem Speicher auf dem CAN-Bus sich befinden die normaler weise von
der "Heizung" sind.
Die unterschiedlichen ID's sagen hier evtl. über den Ursprung aus.
Niedrige ID's haben auf dem CAN-Bus die höhere Priorität. [Annahme, auch
hier?]
Passt alles mit dem, das Du auch dargelegt hast (super). Mir fehlt aber
irgend etwas noch, was?? TA initialisiert sich beim Start und ich
bekomme hiervon nichts mit. Ich konnte auch nichts spontanes
feststellen. Ablaufsteuerung? Vielleicht, fehlen aber auch noch
Informationen von der Heizung direkt an BM1 über I2C. Ich kenne dieses
"Hin und Her schaukeln" der Daten auch nicht. Sondern Anfrage <--->
Antworten ->Ruhe.
Peter
Interessant...
Ich gehe hier wirklich davon aus, dass diese Steuerung nach dem SPS
Prinzip arbeitet und dort werden Informationen einfach ohne Frage
rausgeschickt aber dafür zyklisch. Das heißt wenn mal etwas verloren
geht, ist es nicht wild, da ja ein paar Augenblicke später wieder der
Wert erneut gesendet wird.
Von meinem BMW weiß ich, dass es auf dem Karosserie-CAN eine
Frage-Antwort Kommunikation gibt aber die meisten Daten einfach auf den
Bus gelegt werden.
Die TA wird wohl einfach beim Einschalten die Werte der Heizung
entgegennehmen und damit arbeiten und wenn keine Werte kommen, einen
Fehler auslösen? Ist das richtig?
So wie ich das verstanden habe ist das BM1/2 nur ein Interface, was vom
I2C auf CAN und zurück übersetzt.
Okay also ich habe mich jetzt gewundert wie die Heizung denn es
mitbekommt, dass sie nun die Pumpe ausschalten soll und im Sparbetrieb
sich befinden soll. Das ist ja etwas, was definitiv vom TA/TR kommen
muss.
Dabei ist mir eine Diskrepanz aufgefallen. Laut Berichten sollte die
0x253 für die WW Soll-Temperatur stehen. Ich meine aber herausgefunden
zu haben, dass es bei meiner ZSR24-6 im reinen Heizbetrieb das Byte für
den Sparbetrieb ist.
Hi,
Dave schrieb:> Ich gehe hier wirklich davon aus, dass diese Steuerung nach dem SPS> Prinzip arbeitet und dort werden Informationen einfach ohne Frage> rausgeschickt aber dafür zyklisch. Das heißt wenn mal etwas verloren> geht, ist es nicht wild, da ja ein paar Augenblicke später wieder der> Wert erneut gesendet wird.
Ja/ nein so lange sie im Speicher sind. Vielleicht ist die Zykluszeit
größer in der Heizung.
Dave schrieb:> Von meinem BMW weiß ich, dass es auf dem Karosserie-CAN eine> Frage-Antwort Kommunikation gibt aber die meisten Daten einfach auf den> Bus gelegt werden.
Kann ich nicht bestätigen die Fehlerreaktion ist unterschiedlich und es
existieren nur weniger bedeutende Telegramme.(Fehler hoch zählen)
Timeout ist von wenigen ms bis zweistellige Sekunde. Die nächste
Generation der Hardware wird sicher "nicht mehr" analysiert werden
können. Soviel...!!
Die Heizung wird erstmal die Hardware erkennen müssen. TA211 |
TA250--301;
Dann die Karte BM1 oder auch und den TA freigeben oder auch nicht, CAN
Fehler. Irgendetwas muss passieren wie ein Ack.
Dave schrieb:> So wie ich das verstanden habe ist das BM1/2 nur ein Interface, was vom> I2C auf CAN und zurück übersetzt.
Noch schlimmer: Heizung I2C<---> BM1 {TX/RX<--->TJA1050}
CAN<--->TA250..301
Dave schrieb:> Dabei ist mir eine Diskrepanz aufgefallen. Laut Berichten sollte die> 0x253 für die WW Soll-Temperatur stehen. Ich meine aber herausgefunden> zu haben, dass es bei meiner ZSR24-6 im reinen Heizbetrieb das Byte für> den Sparbetrieb ist.
Dazu kann ich Dir momentan gar nichts sagen. Dazu müsste man alles
nochmals überprüfen und in Frage stellen ob hier was falsch gedeutet
wurde. In diesem Zusammenhang habe ich mich auch gefragt wie die Uhr den
Schaltpunkt mitteilt. Es kann nur die "4" sein, die sich ändert.
Was ich heute auch bei mir festgestellt habe das unterschiedliche
CAN-Bus Platinen unterschiedliche Reaktion bis zum Can Fehler
verursachen, selbst ohne Abschluss. Hatte den TA250 bei ebay gekauft und
hatte immer den Verdacht das der LOw Pin empfindlicher war.
Im Betrieb ist es halt besser, man hat mehr Möglichkeiten. Vielleicht im
Sommer.:-(
Peter
Hi,
habe die Adresse 0x256 ein wenig untersucht:
256 4 4 16 29 4
256 4 4 16 29 6
256 4 4 16 29 13
256 4 4 16 29 18
256 4 4 16 29 40
256 4 4 16 29 49
256 4 4 16 30 0
256 4 4 16 30 4
Durch umschalten von Urlaub auf Info (z.B.:) wird ein fortlaufender Wert
angezeigt(im Telegramm). Ruht die Aktion wird der Wert wieder mit 0x04
angezeigt. Gehe davon aus, das dann Sekunden angezeigt werden.
Allerdings bleibt der Sinn mir verborgen.
Während des Mitschnitts der Daten von etwa 5 Stunden wurden keine
Sollvorlauftemperaturen, trotz Heizkurve, vom TA gesendet. Das bestätigt
wohl noch nicht meine Annahme dass das TA weniger intelligent ist als
ich glaubte, aber es ähnelt der Funktion des TA211E. Vorgaben
bereitstellen Eingabemodul.
Peter
Peter schrieb:> 256 4 4 16 29 4> 256 4 4 16 29 6> 256 4 4 16 29 13> 256 4 4 16 29 18> 256 4 4 16 29 40> 256 4 4 16 29 49> 256 4 4 16 30 0> 256 4 4 16 30 4
Womöglich werden dann die Sekunden(?) mitgeschickt, damit sich der Wert
fortlaufend ändert um so den Controller "wach" zu halten. Bei sich nicht
ändernden Werten nehme ich an wird die Heizung nämlich keine neuen
Parameter umsetzen. Könnte ein Workaround sein um für die
Programmierfunktionen aktuelle Werte anzeigen zu können oder es ist
einfach ein dummer Bug in der Firmware der TAs :)
Ich probiere es mal am Lebendobjekt einfach aus dauerhaft die
vermeintlichen Sekunden mitzuschicken. Mal schauen was passiert.
Peter schrieb:> Während des Mitschnitts der Daten von etwa 5 Stunden wurden keine> Sollvorlauftemperaturen, trotz Heizkurve, vom TA gesendet. Das bestätigt> wohl noch nicht meine Annahme dass das TA weniger intelligent ist als> ich glaubte, aber es ähnelt der Funktion des TA211E. Vorgaben> bereitstellen Eingabemodul.
So sehe ich das auch. Deswegen nenne ich diese Geräte schlichtweg
"Fernsteuerung" denn eigentlich tun sie nichts anders als einem den Weg
in den Keller sparen, wenn es etwas einzustellen oder zu kontrollieren
gibt.
Update:
Ich habe heute mal meine Steuerung getestet und -überraschung- es klappt
natürlich nicht.
- Sende ich die Vorlauftemperatur, so juckt das die Therme überhaupt
nicht. Sie regelt autark ihre Standardkurve
- Lasse ich den ESP verstummen, kommt "A8" - CAN Kommunikation
unterbrochen
Naja dann muss die TA ja doch irgendwas senden, damit die Therme das tut
was man will.
Mit abgeklemmter TA schickt die Therme die folgenden IDs:
1
200
2
201
3
204
4
206
5
207
6
208
7
209
8
20C
9
20D
10
20A
Mit TA:
1
F9
2
250
3
252
4
253
5
254
6
255
7
25A
8
258
9
404
10
405
Ich denke man kann ganz sicher sagen, dass alle Telegramme über 0x250
vom Regler kommen und alles darunter vom Heizungscontroller.
Ich habe ohne TA die folgenden Frames gesendet:
1
F9
2
252
3
253 > 0/1
4
258
Muss jetzt die Tage mal schauen was meine Heizung an Nachrichten
braucht, damit sie das frisst was ich ihr diktiere...
Hallo!
Es ist wirklich hochinteressant bei euch mitzulesen, ich würde dennoch
gerne das Thema noch einmal auf die Hardware lenken.
Wie in meinem der älteren Posts geschrieben, verwende ich einen "Lawicel
CANBUS Interfaceadapter für USB-Anschluss" und logge mit einer Software
(CANHacker 2.0) am PC.
Das Problem ist, dass de PC andauernd laufen muss und die Software nicht
automatisch die Logs speichert.
Deswegen bin ich seit geraumer Zeit daran das Modul an meiner Synology
NAS zu laufen zu bringen, wozu ich aber offensichtlich nicht die Skills
besitze.
Mein Ziel ist es die Logdaten in eine SQL-Datenbank zu schreiben, woraus
ich sie dann weiterverarbeiten kann.
Jetzt lese ich über RaspberryPI und Arduino....
Wie genau muss ich mir das vorstellen?
Laufen die autark, ohne weiteren PC?
Was muss ich dafür kaufen?
Kann mich da vielleicht jemand an die Hand nehmen?
Was ist, wenn meine Junkers-Therme das Zeitliche segnet?
Wie arbeiten die Busprotokolle moderner Thermen?
Kann man das dann anpassen?
Sorry, dass ich hier Eure Diskussion etwas abschweifen lasse. ;-)
Gruß,
Bernd
@Bernd:
Wenn man mit einem ESP32 arbeitet, kann man die Daten über
entsprechendes CAN-Modul lesen und dann über frei verfügbare
Bibliotheken in eine SQL Datenbank (z.B. auf Synology) schreiben. Dafür
braucht es dann natürlich keinen extra PC.
Ich schreibe beispielsweise über MQTT auf Home Assistant auf einem
Raspberry Pi 4.
Der Aufbau sieht so aus:
Therme <-CAN-> MCP2515+TJA1050 Modul <-SPI-> ESP32 <-WIFI-> <-MQTT->
Home Assistant OS auf Raspi 4
Bei dir könnte das so aussehen:
Therme <-CAN-> MCP2515+TJA1050 Modul <-SPI-> ESP32 <-WIFI-> <-SQL-> SQL
Datenbank auf Synology
Wie fit bist du denn in Sachen C/C++-Programmierung?
Zukunftssicher ist das übrigens keinesfalls. Neue Thermen werden sicher
komplexere und obskurere Protokolle sprechen. Die gute Nachricht ist,
dass eine Therme bei guter Wartung auch entsprechend lange hält.
Zu meinem "Problem":
Ich habe übrigens noch nicht probiert mal das Modul auf 5v laufen zu
lassen. Vielleicht klappts ja dann mit dem Setzen von Werten....
Erfolg!
Folgendes:
Der Heizung ist es vollkommen egal ob Nutzdaten über den Bus geschickt
werden. Solange es eine gültige ID ist ohne Daten, wird nicht der Fehler
A8 gesendet.
Mein Fehler lag darin nicht vorher die CAN Nachricht in der Länge zu
definieren. Dadurch wurde ein leeres Paket verschickt. Das sorgte dafür,
dass die Heizung nichts tat aber auch keinen Fehler warf.
Nun läuft alles.
Nachtabsenkung klappt wie folgt:
- 0x252 auf beispielsweise 10° stellen
- 0x253 auf 1 stellen
Nach kurzer Zeit stoppt dann auch die Pumpe.
Source Code folgt!
@Dave
Leider habe ich von C/C++ Programmierung keine Ahnung.
Ich habe mich mal vor 40 Jahren mit der Thematik auseinandergesetzt,
aber nie wirklich weiter verfolgt.
Mir würde es ja schon reichen, wenn ich irgendwo eine fertige Anwendung
für Linux finden würde, die man auf ARM-Linux kompilieren könnte und die
einen einfachen Textlog erzeugt.
Zum Import aus dem Textlog in meine SQLDatenbank könnte ich ja dann eine
PHP-Script schreiben.
Im Moment mache ich es ja genauso, nur dass mein Sniffer nicht
automatisch die Logs in eine Textdatei schreibt, sondern diese manuell
gespeichert werden müssen. Außerdem (ich hatte es erwähnt) läuft er
unter Windows, was es unabdingbar macht, dass der PC andauernd läuft.
;-(
Die Synology läuft eh immer, also wäre es die beste Lösung.
Was du jedoch hiermit meinst:
Therme <-CAN-> MCP2515+TJA1050 Modul <-SPI-> ESP32 <-WIFI-> <-SQL-> SQL
Datenbank auf Synology
sagt mir nichts. :-(
Gruß,
Bernd
by the way: du solltest den Sensor für die Vorlauftemperatur auf die
Rücklaufseite klemmen, das Ding taktet ja wie ein Hundeschwanz. Und dann
die Temperaturen entsprechend runtersetzen. Ggf. muss man dann die Pumpe
auch etwas höher einstellen, damit die Therme auch mal etwas arbeiten
kann.
Oft empfehlen die "Profis" die Pumpe runterzudrehen was nicht immer
richtig ist. Die Schwankungen deiner Vorlauftemperatur sprechen nämlich
genau vom Gegenteil.
Der große Vorteil bei der Messung im Rücklauf ist eben auch dass man
einen direkte Rückmeldung des Bedarfs hat.
Hallo,
Dave schrieb:> Folgendes:> Der Heizung ist es vollkommen egal ob Nutzdaten über den Bus geschickt> werden. Solange es eine gültige ID ist ohne Daten, wird nicht der Fehler> A8 gesendet
Fehler habe ich genug, aber A8 habe noch nicht gesehen. Ist das ein
eigenes Telegramm?
Leider habe nicht den Erfolg bei mir gesehen.
Ich habe immer ein vollständiges Telegramm gesendet aber keine Reaktion.
Aber egal super Ergebnis tolle Oberfläche. Werde erstmal alles neu
überprüfen.
Simulation klappt schon.
Peter
Thomas O. schrieb:> by the way: du solltest den Sensor für die Vorlauftemperatur auf> die> Rücklaufseite klemmen, das Ding taktet ja wie ein Hundeschwanz. Und dann> die Temperaturen entsprechend runtersetzen. Ggf. muss man dann die Pumpe> auch etwas höher einstellen, damit die Therme auch mal etwas arbeiten> kann.>> Oft empfehlen die "Profis" die Pumpe runterzudrehen was nicht immer> richtig ist. Die Schwankungen deiner Vorlauftemperatur sprechen nämlich> genau vom Gegenteil.>> Der große Vorteil bei der Messung im Rücklauf ist eben auch dass man> einen direkte Rückmeldung des Bedarfs hat.
Danke für den Tipp! Das stört mich schon die ganze Zeit aber konnte es
mir nie so wirklich erklären. ich hatte bereits zig Heizungsbauer zur
Wartung im Haus und jeder stellt was anderes ein. So wie sie jetzt läuft
kann das nicht im Sinne des Erfinders sein...
So wie ich es sehe Taktet die Heizung gerade so, dass im Mittelwert die
eingestellte Vorlauftemperatur resultiert. Dabei geht der Brenner alle 3
Minuten an. Kann ja auch nicht gut für den Zünder sein...
Peter schrieb:> Fehler habe ich genug, aber A8 habe noch nicht gesehen. Ist das ein> eigenes Telegramm?> Leider habe nicht den Erfolg bei mir gesehen.
Ich spreche von dem Fehler-Byte das auf 0x206 kommt. Es beinhaltet "A8",
wenn die Kommunikation nicht statt findet, taucht aber nicht auf, wenn
leere Nachrichten geschickt werden ;)
Die Temperatur im Vorlauf steigt zu schnell und dann schaltet der
Brenner wieder ab. Eine Möglichkeit wäre wie schon gesagt die Pumpe
schneller laufen zu lassen, dann muss aber auch die Abnahme der
Fußbodenheizung passen wenn da alle Ventile zu sind, bringt das
höherschalten der Pumpe nichts. Und im Rücklauf steigt die Temperatur
viel langsamer da die Fußbodenheizung da ja Energie rauszieht. Hier
kannst du die Temp schon außengeführt auf 21-23 °C einstellen und dein
Brenner fährt lange Takte.
Thomas O. schrieb:> Die Temperatur im Vorlauf steigt zu schnell und dann schaltet der> Brenner wieder ab. Eine Möglichkeit wäre wie schon gesagt die Pumpe> schneller laufen zu lassen, dann muss aber auch die Abnahme der> Fußbodenheizung passen wenn da alle Ventile zu sind, bringt das> höherschalten der Pumpe nichts. Und im Rücklauf steigt die Temperatur> viel langsamer da die Fußbodenheizung da ja Energie rauszieht. Hier> kannst du die Temp schon außengeführt auf 21-23 °C einstellen und dein> Brenner fährt lange Takte.
Ich habe mir gerade mal das Servicehandbuch durchgelesen. Die Takte und
Pumpenkennfelder werden vom externen Regler angepasst. Mit externem
Regler ist hier noch nicht mal die TA gemeint sondern das BM1/2.
Im Handbuch steht dazu folgendes:
> 2.7 Autom. Taktsperre> Beim Anschluss eines witterungsgeführten Reglers> wird die Taktsperre automatisch angepasst. Mit der> Servicefunktion 2.7 kann die automatische Anpassung> der Taktsperre ausgeschaltet werden. Dies kann bei> ungünstig dimensionierten Heizungsanlagen notwendig> sein.> Bei ausgeschalteter Anpassung der Taktsperre ist die> Taktsperre über die Servicefunktion 2.4 Taktsperre> einzustellen.> B Wurde die automatische Anpassung der Taktsperre> ausgeschaltet, dies auf dem dem Gerät beigelegten> Inbetriebnahmeprotokoll eintragen.> 2.4 Taktsperre> Die Funktion ist nur bei ausgeschalteter Servicefunktion> 2.7 Autom. Taktsperre aktiv.> Im Lieferzustand ist die Taktsperre auf 3 Minuten eingestellt.> Der kürzestmögliche Schaltabstand beträgt 1 Minute> (empfohlen bei Einrohr- und Luftheizungen).> Bei 0 ist die Taktsperre ausgeschaltet.> > Bei Anschluss eines witterungsgeführten> > Heizungsreglers ist keine Einstellung am> > Gerät notwendig.> > Die Taktsperre wird vom Regler optimiert.> Taktsperre auf dem dem Gerät beigelegten Inbetriebnahmeprotokoll> eintragen.
Zur Pumpe steht folgendes:
> 2.2 Pumpenschaltart> > i Beim Anschluss eines witterungsgeführten> > Reglers wird automatisch die Pumpenschaltart> > 3 eingestellt.> Mögliche Einstellungen sind:> • Schaltart 1 (in Deutschland nicht zulässig)> für Heizungsanlagen ohne Regelung.> Der Temperaturregler für Heizungsvorlauf schaltet> die Pumpe.> • Schaltart 2 (Werkseinstellung) für Heizungsanlagen> mit Raumtemperaturregler.> Der Temperaturregler für Heizungsvorlauf schaltet> nur das Gas, die Pumpe läuft weiter. Der externe> Raumtemperaturregler schaltet Gas und Heizungspumpe.> Die Pumpe läuft 3 Minuten nach.> • Schaltart 3 für Heizungsanlagen mit witterungsgeführtem> Heizungsregler. Der Regler schaltet die [...]
Etwaige Nachrichten bezüglich Pumpensteuerung oder Taktsperre werden
nämlich nicht verschickt. Das muss im Busmodul ablaufen.
Schaue ich mir die Takte von vorgestern (TA270) und heute (Meine
Steuerung) an, sehe ich da auch keinen Unterschied.
Hallo,
@Dave
könntest Du mal die dargelegten Adressen("update") mit Daten füllen
durch den Mitschnitt. Will deine Daten als Referenz nehmen. Danke.
..
Wenn ich nur die Rücklauftemperatur messe, pflege ich mir die ganzen
Bedarfsanforderungen der Räume (Thermostat-->Störungen Tem_abfall)) in
die Regelung ein und habe weder eine Bedarfsregelung noch eine
witterungsgeführte Regelung und ich verändere die Effizienz der Heizung.
Weiterhin nimmst die Trägheit der Heizung mit ins Boot, das sind sicher
bis zu 15 min. Meiner Meinung nur die Taktung ändern, hat auch nach
teile.
Peter
witterungsgeführt bleibt es ja trotzdem das läuft über die Außentemp.
man stellt anstatt z.b. 32°C Vorlauftemp auf 22°C ein und misst die
Rücklauftemperatur, die Heizkurve kann auch flacher einstellen. Über den
Abgleich kann man die Räume wie gewünscht einstellen. Den Hinkefuß mit
den Raumthermostaten braucht man nur wenn die hydraulischen Verhältnisse
so mies sind das einzelne Räume nicht bedient werden, wenn andere Räume
nicht beim erreichen abgestellt werden.
Angenommen ich habe eine Rücklauftemp von 16° dann ist das ein Maß
dafür, dass ein hoher Bedarf besteht, wenn die Rücklauftemp 21-22°C ist,
weiß ich das der Bedarf gegen 0 geht. Bei der Vorlauftemperatur weiß ich
nicht was benötigt wird, das muss ich rein von der Außentemp. ableiten,
die aber viel schneller Fallen kann als es sich im Gebäude auswirkt.
Hallo,
ich will hier nicht wieder etwas nebensächliches aufmachen.
Wir haben hier alle eine Heizungen die mindestens 10 Jahre alt und nicht
die High_End ist.
Sehe das mal so, wie eine elektrische Schaltung mit Spannung und ~Strom_
Stabilisierung mit Widerstandsnetzwerke (Heizkörper) bei Belastung von
Außen, das Du regeln willst.
Der hier erwähnte hydraulische Abgleich einer Heizung würde nur eine
Rolle spielen in Bezug mit einer Hocheffizienzpumpe. In unseren
Heizungen nicht verbaut, noch einbaubar. Ich habe hierfür automatische
Strangregulierungsventile pro Strang ein Satz.
Wenn du durch Vorteile siehst oder hast ok. Eine Witterungsgeführte
Regelung sieht halt anders aus
!!
Peter
Peter schrieb:> könntest Du mal die dargelegten Adressen("update") mit Daten füllen> durch den Mitschnitt. Will deine Daten als Referenz nehmen. Danke.
Ich hatte in dieses Excel was ich auf Google Docs erstellt habe auf
einem Blatt meine Kommunikation eingefügt. Mittlerweile rennt meine
Heizung zuverlässig über die eigene Steuerung aber ich kann da gerne
nochmal die TA anklemmen und etwas mehr schnüffeln.
@Thomas:
Das ist ja alles richtig aber ich sehe hier vorallem Probleme durch
Verluste wegen nicht isolierter Leitungen, fehlender Isolierung
generell, da Bruchsteinmauerwerk von 1800-irgendwas. Ich muss an das
Thema erstmal mit einem Haufen Isoliermaterial und meinem Installateur
des Vertrauens ran rücken. Egal was ich einzustellen Versuche, es
resultiert im gleichen Ergebnis. Die Rücklauftemperatur ist sogar nahezu
stabil bei 34° und schwankt nur minimal.
@Bernd:
Bernd Rehlinger schrieb:> Leider habe ich von C/C++ Programmierung keine Ahnung.> Ich habe mich mal vor 40 Jahren mit der Thematik auseinandergesetzt,> aber nie wirklich weiter verfolgt.>> Mir würde es ja schon reichen, wenn ich irgendwo eine fertige Anwendung> für Linux finden würde, die man auf ARM-Linux kompilieren könnte und die> einen einfachen Textlog erzeugt.
Ich denke ich kann dir dabei helfen. Wenn du nur die Daten aufzeichnen
möchtest und in eine DB haben willst, kriegen wir da sicher etwas hin.
---
Soooo jetzt aber zum Eingemachten:
Die Steuerung kann jetzt im Grunde alles was das Original auch kann -
eben nur durch MQTT gesteuert. Sie erkennt auch anhand der Telegramme
auf dem Bus ob sich bereits eine Steuerung dort befindet und regelt
selbstständig ob sie eingreift oder nicht.
Eine Boostfunktion haut für x Sekunden das maximale an VLT raus und die
Schnellaufheizung macht das was das Original auch macht: Sie heizt, wenn
aktiv, mit aller Gewalt auf die Ziel-Raumtemperatur aber bremst auch
etwas ab, wenn der Wert sich nähert.
Die VLT Kennlinie ist selbst definierbar und richtet sich nicht nach den
hartkodierten Werten wie "Tiefpunkt" bei -15° sondern nach dem Prinzip
bei welcher Außentemperatur das maximale an Heizleistung abgerufen
werden soll und bei welcher Temperatur sie sich praktisch ausschaltet.
Ich finde das etwas intuitiver.
Source liegt hier öffentlich:
https://github.com/Neuroquila-n8fall/JunkersControl
Hallo,
@Dave
Bin erschlagen von deiner Software, verstehe momentan davon nichts.:-(
Meine Hochachtung!!!!
ziehe mich in die Ecke zurück..... Ok
Benutze leider die übergeordnete Software nicht. Vielleicht...
ACAN2517FD kenne ich auch und Pierre ist auch super.
Was ich fragen wollte, wenn durch das TA eine Vorlauftemperatur
vorgegeben wird und Du steuers eine andere nach. Wird die neue im TA
übernommen?
Oder wird, kann die eingestellt Zeit durch die Software gesetzt werden.
Das Ziel was ich mir gegeben habe ist nicht nur die Visualisierung der
Heizung sondern, die Optimierung (hat wohl jeder), die auch Thomas fast
im Sinn hat, allerdings über den Ventilstand der Heizkörperventile in
jedem Raum und zur Temperatur. Sozusagen ein Hauskennfeld zur
Temperatur.
Fällt mir so ein,.. eine hohe Taktung ist aber auch eine hohe sichere
Nachführung der Temperatur.
Peter
Peter schrieb:> Bin erschlagen von deiner Software, verstehe momentan davon nichts.:-(>> Meine Hochachtung!!!!>> ziehe mich in die Ecke zurück..... Ok>> Benutze leider die übergeordnete Software nicht. Vielleicht...>> ACAN2517FD kenne ich auch und Pierre ist auch super.
Danke! Muss dazu aber sagen die Steuerung in meinem Auto ist da noch
viel deftiger :)
Für die Geschichte braucht man eigentlich nur Visual Studio Code und
Platform.io Add-In. Der Rest passiert schon fast automatisch ;)
Peter schrieb:> Was ich fragen wollte, wenn durch das TA eine Vorlauftemperatur> vorgegeben wird und Du steuers eine andere nach. Wird die neue im TA> übernommen?> Oder wird, kann die eingestellt Zeit durch die Software gesetzt werden.
Das habe ich nicht ausprobiert. Meine Steuerung erkennt die TA anhand
der Telegramme und schaltet sich auf reinen Lauschbetrieb. Fehlen für 30
Sekunden die Nachrichten der TA, schaltet sich meine Steuerung wieder
aktiv.
Naja die Zeit ist völlig irrelevant fürchte ich... aber die letzte
Ziffer, die meist "4" ist muss eine besondere Bedeutung haben. Ich
vermute schon fast da liegt die Taktsperre drin.
Peter schrieb:> Das Ziel was ich mir gegeben habe ist nicht nur die Visualisierung der> Heizung sondern, die Optimierung (hat wohl jeder), die auch Thomas fast> im Sinn hat, allerdings über den Ventilstand der Heizkörperventile in> jedem Raum und zur Temperatur. Sozusagen ein Hauskennfeld zur> Temperatur.
Das ist ja auch durchaus machbar. Allerdings muss man sich dann fragen
wo das "Leitsystem" steckt, was dann die ganzen Daten zusammenführt,
auswertet und runter zur Steuerung schickt. Da kann ich wirklich nur
MQTT als "Interface" (es ist ein Broker) empfehlen.
Ich werde im nächsten schritt die restlichen Thermostate durch
entsprechende Homematic IP Geräte austauschen und kann dann auch auf die
Wärmeforderung des gesamten Hauses reagieren. Ein entsprechendes
Adaptionsfeld mit dem man die VL-Temperatur künstlich an- und absenken
kann ist bereits im Code drin. So kann man dann bei besonders hoher
Anforderung noch eine extra Schippe drauf legen und bei besonders wenig
eben reduzieren.
Hallo,
Dave schrieb:> Danke! Muss dazu aber sagen die Steuerung in meinem Auto ist da noch> viel deftiger :)
Kann ich mir durch aus vorstellen, BMW, VW, Porsche, Daimler, RR....
gehörten zu unseren Auftragsgebern um für Sie Fahrzeugelektronik
herzustellen und zu "testen". Und die Testsystem mussten auch zum Teil
das Fahrzeug simulieren und diese mit Arduino und Co. Der Umfang der
ständigen Telegramme ist enorm ( um die Vectoroberfläche sich zu
sparen))
Dave schrieb:> Naja die Zeit ist völlig irrelevant fürchte ich... aber die letzte> Ziffer, die meist "4" ist muss eine besondere Bedeutung haben. Ich> vermute schon fast da liegt die Taktsperre drin.
Kann ich nicht nachvollziehen, weil ich habe keine Heizung angeschlossen
und glaube das auch der I2C dicht gemacht hat. Somit kommt die
Information, die scheinbar alle habe, nur vom TA. Die Taktzeit kannst Du
aber, nur über in die Fachmannsebene einstellen (am Ofen). Irrelevant
würde ich nicht gerade sagen, ...ist halt ein Steuerpunkt.
Dave schrieb:> Allerdings muss man sich dann fragen> wo das "Leitsystem" steckt, was dann die ganzen Daten zusammenführt,> auswertet und runter zur Steuerung schickt.
Da stimme ich Dir auch voll zu. Es sind noch viele Punkte zu klären und
der Plan stand schon relative früh fest etwas daran zu schrauben.
Ich sehe hier den CAN-Bus als ein Fehler an und das hat ja Bosch auch so
gesehen. Von I2C auf WLAN ist der Plan, der noch nicht verworfen wurde
von mir.
Der zweit Punkt ist natürlich die Raumsteuerung ich halte die alte ELV
Lösung für die beste. Leider nur noch wenig Information im Netz. Aldi
hat die Jahren für 12 oder 15Euro komplett, verschenkt. Habe jeden
Heizkörper damit bestückt.
Der dritte Punkt ist natürlich die Datenaufarbeitung, gebe ich Dir wie
gesagt vollkommen recht. Ich hätte es dann auch ins Fernsehen gerne
geschoben. mit selbst Meldung. Mal sehen.
Muss jetzt erstmal meinen Fehler suchen.
Peter
Hi,
nochmals.
Habt Ihr mal die aktuelle Versorgungspannung des TA250/270 für mich.
BM1 Stecker Pin 1 bzw. 4, habe hier 14,40V?
Vielleicht habt Ihr die Möglichkeit hier zu messen.
Danke
Peter
Peter schrieb:> BM1 Stecker Pin 1 bzw. 4, habe hier 14,40V?> Vielleicht habt Ihr die Möglichkeit hier zu messen.> Danke> Peter
Habe 17v aber laut Handbuch sind 14-24V okay.
Danke Dave,
der TA akzeptiert einfach die zweite CAN-Bus Leitung(Anzapfung) nicht
und der Can-Bus schwankt bei Belastung. Einer hat eine Macke.
So klappt es ja, bei Belastung....nicht so
Scheint wohl mal schlechtere Zeiten gesehen zu haben.
Es existieren scheinbar 2 Versionen von der BM1 Karte. Die eine hat im
CAN Bus 2 Widerstände mehr laut Bild.
Peter
Peter schrieb:> Nachtrag:>> ohne Abschlusswiderstand lässt sich das TA steuern, korrektes Signal?>> Peter
Das heißt die TA übernimmt die Werte, wenn man den Widerstand raus lässt
oder was genau hast du getestet?
Hi,
genau, zu mindestens das TA funktioniert so. Die Werte aus den
Telegrammen werden in InFo eingeschrieben. Allerdings habe ich erstmal
die 0x200 bis 0x20F gesendet. Das gibt ja Sinn, kommen ja vom BM1 und
sind IST-Daten.
Das Oszilloskop_Bild in auch Ok. Aber es kann durch aus sein das die
zweite Variante (R5/R6) mit Abschluss arbeitet, bzw. meine defekt sind.
Peter
Ich habe nochmal ein wenig Hirnschmalz reingesteckt und ein paar
Funktionen hinzugefügt:
- Externe Temperatursensoren, welche mit dem OneWire Protokoll
kompatibel sind (bsp.: DS18B20), können in friedlicher Koexistenz mit
dem System ausgelesen werden. Ich habe Sensoren am VL, NL, frei im Raum
hängend und im Rauchrohr sitzen. Wer gerne Daten sammelt, der versteht
mich ;)
- Anpassung der Vorlauftemperatur basierend auf der Rücklauftemperatur
(externer Sensor, Dallas): Fährt die VLT runter, wenn die NLT zu hoch
ist. Ich nenne das einfach mal "Dynamische Adaption" und sollte für
Fußbodenheizungen besonders interessant sein, da es quasi wartet bis die
NLT Temperatur unter einen gewissen Wert wandert um somit praktisch die
Restwärme aus dem NL zu ziehen. Klappte bei mir sogar ganz gut bevor ich
den hydraulischen Abgleich durchgeführt hatte. Jetzt eher so
minderprächtig.
Ein Feature was ganz besonders Interessant ist, wenn man eh überall
Smarte Thermostate hat:
- Anpassung der VLT anhand der Ventilöffnung: Man berichtet einfach das
am weitesten geöffnete Ventil an die Steuerung und diese regelt
entsprechend die VLT anhand von min-max werten. Ich nenne das
Ventilskalierung. Natürlich könnte man hier auch den Mittelwert aus x
Thermostaten rein füttern - völlig frei.
-- Anpassung der VLT unter Berücksichtigung der Außentemperatur. Die
Basistemperatur wird angehoben, wenn zusätzlich die Dynamische Adaption
an ist. In diesem Modus wird anhand der Ventilöffnung geregelt und
zusätzlich zu einem gewisser Anteil der sich aus dem statischen
Adaptionswert errechnet, angehoben.
- Stumpfes setzen der Vorlauftemperatur über MQTT. Wenn man bereits
Berechnungen in einem Smarthome System gesammelt hat, kann man einfach
den gewünschten Wert an die Steuerung senden. Damit wird ach alles
andere natürlich überschrieben.
Zuvor hatte ich mal den kompletten Code auf den Kopf gestellt und da es
sich nicht mehr um einen Prototyp handelt nun alles sauber in einzelne
Codedateien aufgegliedert. Es könnte sein, dass jetzt der ein oder
andere Probleme beim Lesen hat. Sorry - war aber notwendig da es zu
komplex geworden ist :(
https://github.com/Neuroquila-n8fall/JunkersControl
Ein kompaktes PCB mit Can Controller, Receiver und Spannungsversorgung
ist auch in der Mache und kommt am Donnerstag. Wenn ich nicht gerade
Mist gebaut habe, kommt das auch nochmal ins Repository dazu.
der hydraulische Abgleich stellt nur sicher das alle Kreise gleich
durchströmt werden, wenn der Heizi allerdings in manchen Räumen nicht
genug Heizflächen installiert hat (meistens in kleinen Räumen wie
Bädern), dann muss die VLT höher eingestellt werden um diese Warm zu
bekommen. Und genau deswegen gibt es die Pflicht in der EneV für
Raumthermostate, weil man schon davon ausgeht das es die wenigsten
Heizis hinbekommen. Nun schaltet die Räume ab, die ihre Solltemp
erreicht haben, und dann bekommen die anderen Räume mehr Durchfluss die
zuvor unterversorgt waren, das funktioniert aber nur mit einer höheren
VLT.
Wenn es richtig gemacht wird, wird der Heizbedarf jedes Raumes
berechnet, die Heizflächen entsprechend ausgelegt(z.B. mit Heizrohren in
der Wand) und um die hydraulischen Verhältnisse nicht aus dem Ruder
laufen zu lassen müssen dann eben auch mehr Kreise installiert werden.
Beispiel 11 Kreise a 60 Meter und ein Kreis a 120 Meter, nun müssen alle
"guten/kurze" Kreise auf die Druckverluste des "schlechten" Kreisen
gedrosselt werden damit über all gleich viel Durchfließt. Man hat dann
also hydraulisch 12 Kreise a 120 Meter. Und doppelter Druckverluste
erfordert 4fache Pumpenleistung statt 25W wären das dann auch 100W.
Das schreibe ich nicht um dir eine schlechte Auslegung zu unterstellen,
sondern nur damit andere Bauwillige die dass Lesen berücksichtigen und
sich nicht einfach auf den Heizi verlassen, der dann eben mit einer
hohen VLT zwar alles warm bekommt, die erhöhten Verbrauchskosten aber
der Kunde zahlt.
Genau. Nachdem jetzt die Verteilung richtig eingestellt ist, läuft das
ganze super gut mit der Ventilabhängigen Steuerung. Ich hab dem
Installateur gesagt ich steuere selbst und brauche einfach einen
Abgleich anhand der Entfernung und Raum. Er wusste direkt was ich machen
kann und hat noch gesagt dass grundsätzlich die Heizung selbst genau
weiß was an Wärme zugefügt werden muss selbst wenn die Spreizung zu
niedrig scheint. Allerdings meinte er auch der Kessel ist viel zu "groß"
für den Kreislauf ausgelegt. Die Pumpe läuft jetzt auf dem niederen
proportionalen Modus "4". Dadurch hat sich die Taktung leicht
verbessert.
Hi,
ich kämpfe momentan mit dem alten I2C Ram und deren Ansteuerung, neben
bei.
Da lass ich hier die Ausführung vom Thomas.
Was hast Du für ein Haus mit Strängen von 60m. Habe selbst etwa um 200 m
Rohre verbaut, aber 11 ..12 mal 60 m. Wahnsinn.
Sorry, aber woher hast Du denn diese Weisheit. Wie ich schon
geschrieben habe, und erst recht für ein Haus deiner Größe sind
Strangregulierungsventile ja regelrecht eine Pflicht um eine gute
Steuerung hin zu bekommen. Ob es einen Sinn ergibt mit der
Pumpenleistung oder auch nicht.
Aber ich habe auch die Erfahrung gemacht das sich "keiner" der Fachleute
sich mit dieser Technik auseinandersetz hat(wollte). Übrigens bei mir
ist immer das Bad der wärmste Ort, absichtlich, Taupunkt!
@ Dave
Vielleicht Bilder zeichnen, hört sich schlimm an, aber man versteht es
am schnellsten.
Peter
Von meiner Kreislänge habe ich nichts geschrieben. War nur ein Beispiel
das man mit einem schlechten Kreis alles kaputt machen kann. Ich selber
habe 12 Kreise pro Stockwerk die Kreislänge müsste ich nachschauen,
liegt aber definitiv unter 90 Meter Kreis und sehr konstant sehr
konstant +- 5 Meter.
Ich muss ehrlich sagen das hat nichts mit Weisheiten zu tun sondern mit
schrittweisem Steuern und Beobachtung. Es ist wie mit allem: Frag 100
Leute, bekomme 100 unterschiedliche Antworten... Am Ende habe ich
versucht irgendwie etwas sinnvolles mit den Infos anzustellen.
Da ich keine wirkliche Besserung erzielen konnte habe ich mich an einen
Heizungsbauer gewendet. Derjenige, der 2004 das gesamte System von der
Planung bis zur Inbetriebnahme in der Hand hatte, existiert leider nicht
mehr. Und selbst wenn ist fraglich ob dieser überhaupt noch wüsste, was
vor 17 Jahren war. Zuvor war scheinbar eine Ölheizung installiert -
vermutlich in den 80ern eingebaut. Davor scheint mir hier mit mehreren
Kohle- oder sogar vielleicht Koksöfen geheizt worden zu sein. Das
erklärt auch den winzigen kleinen Kellerraum. Der ist verkapselt also
gehe ich davon aus, dass es vorher ein Kohlelager und danach der Raum
für die Öltanks war. Ansonsten steht die Hütte direkt auf dem Felsen.
Ich gehe mal grundsätzlich davon aus, dass ein Heizungsbauer weiß wie
ein Heizkreis funktioniert. Die Heizung funktioniert ja auch
zweifelsohne. Ich dagegen kann nur anhand von Beobachtungen der
Temperaturen in den Räumen und vom Vorlauf sagen wo es ein Problem gibt
sprich wo eventuell zu viel Energie reingesteckt wird, die eh niemals
ankommt oder gar umgekehrt.
Auf dem Weg zur besseren und intelligenteren Steuerung sind verschiedene
Regelmodelle entstanden die nun weiterhin im "Paket" enthalten sind. Ob
diese Sinnvoll oder nicht sind kann ich nicht beantworten.
Ich fahre jetzt mit der Steuerung nach dem am weitest geöffneten Ventil
am besten. Das ist auch ungefähr das, was Bosch mit den smarten
Thermostaten in Verbindung mit diesen sogenannten smarten
Brennwertkesseln verkauft. Vielleicht etwas raffinierter mit einem
Durchschnitt der "Top 3 Ventile" oder sogar unter Berücksichtigung der
Entfernung zum Kessel (siehe Marketing-gebrabbel im Anhang). Ich würde
gerne das System mal genauer unter die Lupe nehmen aber kenne niemanden,
der es besitzt...
Fakt ist alle Räume werden warm und wenn gerade kein oder kaum Bedarf
besteht, wird die Vorlauftemperatur etwas abgesenkt und damit die
Taktung weiter gestreckt und weniger Energie verplempert. Dabei sinkt
die gemittelte Vorlauftemperatur nie unter 40°, was bei der
durchschnittlichen Öffnung von 10% ausreicht um die Räume auch bei den
zurückliegenden Minusgraden auf der Zieltemperatur zu halten. Für mich
bedeutet das, dass die Steuerung auf das System passt. Sicherlich wird
das so nicht auf jede Umgebung passen. Vielleicht war das ganze
Unterfangen ja auch komplett sinnlos und ich habe eine fette Nachzahlung
im nächsten Zyklus...? Ich konnte jedenfalls die durchschnittliche
Vorlauftemperatur um ungefähr 10° senken ohne weniger Komfort. Auf dem
Papier sollte das eine Ersparnis bringen... Dummerweise sitzt der
Gaszähler in diesem Kellerraum und ehrlich gesagt bin ich zu faul da
täglich runter zu klettern. Selbst wöchentlich ist mir zu viel.
Kann mir an dieser Stelle vielleicht jemand ne gute Lösung zeigen einen
solchen Zähler auszulesen?
Im Übrigen gibt es hier zwei Stränge mit jeweils VL und NL, die parallel
angeschlossen sind (Siehe Skizze im Anhang. Sind die Anzahl der Kreise
gleich Anzahl der Heizkörper mal zwei?) .
EG mit einer Fläche von ca 90m² und OG mit der gleichen. Oben wie unten
sind jeweils 6 Heizkörper mit der exakt gleichen Größe verbaut worden.
Es läuft alles schön brav in U-Form entlang der Außenwände und komme so
auf ungefähr 70m Leitung. Der Kessel sitzt am Fuß des Us im EG. Außer
80er Mauerwerk gibt's hier keine Isolierung. Selbst die Rohrisolierung
der Heizung musste ich nachholen. Die Kupferrohre lagen bis dato einfach
blank in der Luft und teilweise wegen den krummen Wänden auch an der
Wand und/oder aneinander. Rohrhalterung, die dann die Leitungen
voneinander endlich trennen, in einer Mischung aus Kalk- und Sandstein,
Kuhmist, Mörtel, Sandputz und Gipskartonplatten zu befestigen ist
übrigens kein Spaß... Elsässisches Bauernhaus eben ;)
Ich bin jedenfalls sehr gespannt was Peter für Erkenntnisse aus dem BM
gewinnen kann. Wenn das komplett Zurückentwickelt ist erlangt man, laut
dem was das Handbuch sagt, nochmals eine völlig andere Möglichkeit der
Steuerung, da ganz klar gesagt wird, dass manche Funktionen wie die
Taktsperre vom Regler übernommen werden, wenn dieser angeschlossen ist.
Tatsächlich arbeitet die Heizung mit den exakt gleichen Vorgaben, wenn
man den TA abklemmt und einfach nur die Kommunikation aufrecht erhält
also leere Telegramme sendet. Die Taktsperre allerdings bleibt variabel.
In meinem Fall mal 5 Minuten, mal 3, manchmal 1.
Das BM ist leider auch recht teuer, von dem was ich sehe immer
schlechter verfügbar und daher wäre eine Eigenentwicklung ohne CAN, nur
mit I2C, sicherlich deutlich günstiger.
Hi,
ist schon seltsam wie unterschiedlich doch die Häuser sind.
Bei mir werden die Heizkörper in jeder Etage im Paar angesprochen und
nicht insgesamt. Hatte ich aber auch mal dran gedacht, weniger Arbeit.
Bauvorschriften sagen heute aber, das die Mauer nicht geschwächt werden
darf auch bei der Installation nicht. Stränge hatte ich genug.
Hatte damals alles in Eagle gezeichnet und es geht super damit.
Zur Info: hatte den TA nur mit dem CAN_Arduino laufen gelassen und den
Telegrammen des BM1, wie geschrieben. Zeige ab einer gewissen Zeit( n.
bekannt) Fehler F8 Anlage überprüfen. Habe hier zu nichts gefunden.
Scheinbar wird im Hintergrund auch noch der Sinn der Funktion überwacht,
durch den TA.
Teuer, da sagst Du was, hatte mich mal umgeschaut. Unverschämt was die
noch gehandelt werden und nicht mal vollständig.
Hatte mir ja aus China einige Ram's (256 Byte!!!) kommen lassen und
leider aber auch immer meine Zweifel, wenn ich Bauteile bekomme die
kaum beschriftet sind. So diese, nicht mal eben ein Programm suchen und
starten, nee. Lesen schreiben funktioniert wohl aber auch wirklich??
Noch überprüfen und dann, mit dem BM1 weiter.
Peter
Hallo,
habe die BM1 Platine etwas genauer betrachtet, natürlich im
Schreibtischtest.
Die I2C Frequenz liegt bei etwa 30kHz. SCL nicht symmetrisch (Takt
<20%). Der PCF 8570 kann natürlich auch mit höheren Frequenz
angesprochen und gelesen werden.
Hatte erwartet das sich eine zweite Adresse zeigt, ist aber nicht der
Fall. Der CPU onboard meldet sich nicht. Vielleicht der Grund, der zur
Zeit fehlenden Frequenz über Einstimmung. Zyklisch (~10 bis 30s)liegt
ein Signal an.
Beim Start schreibt er einige Daten ins Ram, bis jetzt konnte ich diese
dem TA nicht direkt zu ordnen.
Da sich die Daten nicht durch Vorgabe verändern, gehe ich nun davon aus
das der Speicher nur in eine Richtung gedacht ist. Von der Heizung zum
BM1 alle anderen Einstellungen gehen zyklisch direkt auf dem Bus.
Seltsamerweise habe ich ein CAN-Busfehler(1) erhalten durch den offenen
i2C Bus. Abschlusswiderstände (4k7) müssen auf der Hauptplatine sein.
Leider ist mit dem Arduino ein zeitliches (*genaues) Senden und der
Interrupt Empfang nicht möglich. Wodurch alles etwas verschoben wird. *)
habe festgestellt das die korrekte Sendezeit keine Änderung bewirkt.
Hingegen zyklische kürzere Sendezeiten ändern die Einträge(!TA).
Werde jetzt versuchen auf 30kHz i2C zu kommen um zu sehen was gesendet
wird.
Peter
Erinnert mich irgendwie an das defekte BM1 was ich zuerst erhalten
hatte. CAN Fehler auf TA und Heizung. Ich glaube fast es gibt sehr viele
"faule" BM1 Module auf dem Markt...
Hi,
gebe ich Dir vollkommen Recht. Obwohl das Packet vollständig war bin ich
überzeugt, das es schon mal eingebaut war und bessere Zeiten gesehen
hat. Aber auch das Bosch in den Jahren nachgebessert hat. Ein CAN Bus
ohne Abschluss und ist ganz sicher ein Strahler, trotz nur 6MHz.
30kHz war kein Problem allerdings bei 50%. Mein kleiner Scanner (12Euro)
sagte mir das vom BM1 nur das Ram angesprochen wird. Einige wenige
Adressen werden zyklisch gelesen, mit 0 können sie scheinbar nichts
anfangen....
Peter
So wie es scheint muss man doch noch etwas anders machen damit auch bei
der Nachtabsenkung die Pumpe ausgeht. Wenn man die TA anklemmt und
danach auf den eigenen wechselt, klappt es. Startet man die Heizung mit
dem eigenen, schaltet sie nicht ab. Muss ich mal genauer
protokollieren....
Hallo Dave,
die letzte Woche war sehr ernüchternd.
Zwar habe ich im RAM eine Zelle gefunden, die einen gewissen Schlüssel
besitzen muss, da sie beim Start vom BM1 abgefragt wird und Daten auch
im RAM der eigenen Simulation TA übernimmt, aber nach ~60s von Daten
überschrieben wird (immer) ohne einen Einfluss des TA's. Diese
Einstellung bleibt dann auch unverändert, auch wenn Änderungen im TA
vorhanden sind.
Aus Projekten kenne ich das "ALIVE" Telegramm ein erwartetes einfaches
hochzählen zum Beispiel von 0 bis 0x0E, bzw. ein ständiger Bitwechsel.
Bei mir fehlt auf jeden Fall noch was und der Aufwand wird immer größer
und zeitraubender, die Heizung fehlt halt.
Weiterhin habe ich jetzt die Simulation TA bzw. BM1 bei mir erweitert
und Lese auch immer mit, was da vom andern verbleibenden Gerät (TA oder
BM1) kommt. Hier wird scheinbar bei einigen Telegrammen eine erheblich
verkürzte Zykluszeit gesetzt. Ursache unbekannt, interessant ist nicht
die Zykluszeit sondern warum kommt es dazu.(Kontrolle: Lesespeicher wird
immer wieder zurückgesetzt folglich sendet der BM1 dies auch))
Mehr Fragen als Antworten.
Peter
Hi,
Nachtrag.
Ich hatte hier mal die Frage gestellt woher man denn weis welches
Telegramm denn nicht "nur" den Status darlegt sondern ein Befehl
anstößt. Weis ich noch immer nicht komplett.
Mich wundert es immer wieder selbst, das hier Erfolge zu verbuchen sind.
Das hier die Vorlauftemperatur und einige andere Telegramme (Soll) die
Funktion ausfüllen liegt in der Sache.
Aber I/O Befehle sehe ich hier nicht und Rückwärts funktionieren solche
Befehle doch eigentlich nicht (Indikator). Wenn ich deine
Funktionseinschränkung hier richtig sehe, dann schaltest Du doch die
ganze Heizung aus was nützt Dir stehendes Wasser. Frostschutz usw. das
Du deine Räume überwachst weis deine Heizung nicht.
Ich gehe davon aus, dass alle Adressen > 0x200 von der Ta sind und
Steuerbefehle sind. Alles darunter sind Werte und Zustände der Heizung.
Offenbar muss man auch die Warmwassertemperatur mitgeben, damit es
klappt, wenn auch nur ein einziges Mal. Ansonsten schaltet die Heizung
nicht vollständig aus, da der Default-Wert dann gilt und dieser muss
dann folglich über 10° sein. Bei Temperaturen unter diesem Schwellwert
springt laut Handbuch die Pumpe vollkommen selbständig ein. Außerdem
springt sie alle 24 Stunden von selbst an, wenn die Heizung im
Sparbetrieb sich befindet. Man hat also von der Regelung aus keine
Kontrolle über den Pumpenbetrieb. Man kann es, wie bei den anderen
Sachen, nur "suggerieren".
Zusammengefasst:
Warmwasser, Speicher und Mischkreistemperatur müssen wenigstens ein
einziges Mal gesetzt werden, damit die Heizung vollständig abschaltet.
Dabei ist es wichtig, dass diese Temperaturen dann auf 10° gesetzt
werden. 10° ist so der Schwellwert für Frostschutz und "Aus".
Hallo,
Dave G. schrieb:> Ich gehe davon aus, dass alle Adressen > 0x200 von der Ta sind und> Steuerbefehle sind. Alles darunter sind Werte und Zustände der Heizung.
Hier bin ich etwas verwirrt, weil Du schreibst doch in deiner
Excel_Ausführung das die Werte von 0x200 bis 0x20F von der Heizung
kommen und die darüber ab 0x250 von der Ta sind. Das kann ich auch so
voll bestätigen ohne angeschlossener Heizung.
Werte darunter habe ich nur eine Adresse 0x0F9 gescannt.
Ja je nachdem was ersetzt wurde habe ( TA oder BM1) ich immer eine
zyklischen Sendung vorgenommen. Die wider rum mal im exakten Zeitfenster
agierte oder schneller, mein Ergebnis war das die schnellere Variante
zuverlässiger war bei der Übernahme der Daten. Allerdings wie
beschrieben bei mir nicht ins RAM.
Deine Pumpeneinstellung wird aber schon sehr komplex. Ich verstehe noch
nicht den großen Gewinn durch das abschalten der Pumpe. Zu laut oder aus
Kosten Gründe.
Peter
Hallo Experten,
auch wenn es ein wenig off-topic ist...
Warum schaltet der Brenner immer noch über den Temperaturfühler am
Heizblock, wenn doch eine HSM mit angeschlossenem
Vorlauftemperaturfühler existiert.
Ich bin total am verzweifeln, weil ich diese verdammte Taktung nicht
wegbekomme.
Gruß,
Bernd
Hallo,
bin kein Experte, als Experte versteht man das System, kann ich n.
behaupten.
Deine Taktung würde ich erstmal vergessen. Hier liegt eher ein Notlauf
der Heizung vor. Ab 16:00 Uhr verabschiedet sich deine Heizung und
danach ist der Brenner aus und die Temperatur stagniert kurz statt zu
fallen.
Vergleiche doch mal die Max. Vorgaben mit den gemessenen Werten.
Wird der TA 270 denn mit einen weiteren Heizkreis betrieben. Ich glaube
ich hatte mal gelesen das der TA250 die bessere Steuerung ist für
"einfache Heizungen" ist.
Übrigens nach 17:00 Uhr sieht doch alles korrekt aus! Und die Werte
werden doch eingehalten. Wen du das System öffnest und längere
Taktzeiten hast wirst Du zwangsweise auch größere Temperaturschwankungen
haben.
Meine Familie hatte mal Ende der 80er Jahre eine E_Zentralheizung gebaut
mit etwa 1000 Liter Buffer als Nachtspeicher und 2 Durchlauferhitzer.
Gesteuert mit Commodore 16 bzw. später mit CCBasic von Conrad.
Währe das dann deine ultimative Löschung, einmal am Tag, nee..., zu viel
Verluste.
Peter
das Ding macht 6 Takte in der Stunde rechnet das mal auf den Tag hoch.
Man muss hier die Pumpen hochdrehen, damit die Wärme abgenommen wird,
dann läuft das Ding auch mal ne Stunde durch ohne an/aus/an/aus......
und unbedingt mal die Rücklauftemperatur aufzeichnen, zur Not einfach
mal nen Sensor auf den Rücklauf setzen.
Hallo und danke für die Antworten.
Der Peak um 16:00 Ur ist die Warmwasserbreitung.
...also kein Notlauf.
Ich habe jetzt alle Pumpen auf Vollast gestellt und das Bild sieht etwas
besser aus.
Ich hänge euch nochmal eine Skizze der Hydraulik an.
So wie es aussieht, scheint die hydraulische Weiche falsch angeschlossen
zu sein.
Ich werde das wohl mal umbauen lassen müssen...
Gruß,
Bernd
Hi,
ja, weiterhin sehr interessant was Ihr da anstrebt.
Höhere Temperaturen längere Brennzeiten? {wenn ich da durchschaue)
Würde den Darstellungsbereich eher verkleinern (einzelne Regelbereiche)
als den Kurvenbereich zu erhöhen.
Schau doch da mal rein. https://www.haustechnikdialog.de/ dort sind wohl
eher die Fachleute.
Peter
Was heißt hsm und hmm wenn nur ein Verbraucher an der hydraulischen
Weiche hängt kannst du diese weglassen. Wenn mehrere dranhängen kann es
dir sonst rückwärts in einen anderen Verbraucher drücken.
Was heißt hsm und hmm wenn nur ein Verbraucher an der hydraulischen
Weiche hängt kannst du diese weglassen. Wenn mehrere dranhängen kann es
dir sonst rückwärts in einen anderen Verbraucher drücken.
Mehr Abnahme = längere Brenndauer. Wenn nichts abgenommen wird schaltet
der Brenner gleich wieder ab weil die Temp zu schnell steigt.
Du kannst die Sensoren in den Rücklauf bauen und die Temperatur
niedriger einstellen da sind die Temperaturschwankungen viel langsamer
Hallo,
weis jemand wie der Stecker des BM1 heißt bzw. der Hersteller. Gemeint
ist übrigens die schwarze Kabelverbindung zur Hauptplatine. Bin auch auf
der Suche nach dem Gerät mit dem 4 poligen Anschluss ST7 auf der
Hauptplatine.
Finde keine Kennzeichnung.
Peter
Hallo,
ein kleines Update über Bosch Junkers Service und Wartungsfirmen!!
Es ist wohl jeden inzwischen bekannt, dass der Bosch "Service" gegen
über den Endkunden gleich Null ist. Aber, dass man nicht einmal eine
Bestellnummer mitgeteilt bekommt damit dies über die Wartungsfirma
bestellen kann, war mir bis jetzt neu.
Weiterhin habe ich dann meine Wartungsfirma angesprochen um die Info
zubekommen. Was dann wieder abgelehnt wurde, weil Sie glauben, dass ich
Ihre Arbeiten machen könnte, was ich natürlich vorher mitgeteilt hatte
das es nicht der Fall wäre. Wahnsinn!!
Jetzt suche auch noch eine neue Wartungsfirma.
Fazit: Kauf (k)ein Bosch Teil!?
Habe mich entschieden einen Sub-D Stecker über Kabel anzulöten.
Hoffe alle gesund!
Peter
Hallo Dave,
Nachfrage:
Hast Du eine Möglichkeit gefunden deinen Gaszähler "auszulesen". Es gibt
ja einige Möglichkeiten in zwischen auch für ältere Zähler.
Versuche schon seit Wochen von Westnetz eine Genehmigung zu bekommen den
Schacht zu nutzen. 10 Liter Impuls. Habe mir sagen lassen, das es da
Ärger geben könnte.
Der CAN-Bus und I2C Bus ruht mal wieder.
Gruß Peter
Peter schrieb:> Hallo Dave,>> Nachfrage:> Hast Du eine Möglichkeit gefunden deinen Gaszähler "auszulesen". Es gibt> ja einige Möglichkeiten in zwischen auch für ältere Zähler.>> Versuche schon seit Wochen von Westnetz eine Genehmigung zu bekommen den> Schacht zu nutzen. 10 Liter Impuls. Habe mir sagen lassen, das es da> Ärger geben könnte.>> Der CAN-Bus und I2C Bus ruht mal wieder.>> Gruß Peter
Moin!
Ich überlege via Photosensor und Led die Impulse direkt an der Scheibe
auszulesen. Bin aber momentan noch dran die Steuerung in eine solide
Platine zu verwandeln damit ich das Kabelgestrüpp loswerde, was momentan
da rumgeistert...
Hi,
hört sich gut und einfach an.
Hatte mal von einer ESP Kameramessung gehört
https://github.com/jomjol/AI-on-the-edge-device
Ich wollte es mit einem ADXL213 realisieren, eine kleine Platine von
Daimler Lageerkennung (Diebstahlschutz) bzw. Magnetfelder.
Muss erstmal die Freigabe haben, das ich den Blindstopfen für den
Impulsgeber entfernen darf um es auszuprobieren.
Bin mal wieder hängenblieben an andere Aufgaben, aber bau mir eine
separate Heizung für den Schreibtisch auf, bzw. lege mir so Ersatzteile
auf Lager.
So kann dann der Can-Bus besser zum I2C betrachtet werden. War einfach
zu Zeitraubend.
Peter
Das mit dem ESP CAM-Modul klingt echt vielversprechend aber in meinen
Augen doch etwas "überverkompliziert" dafür, dass man einfach nur
Impulse messen muss.
Werde ich aber sicher mal ausprobieren.... danke für den Tipp!
Ich wollte eigentlich das auch für die Stromzähler umsetzen aber da ich
demnächst neue Zählerplätze bekomme mit EHZ, bleibt wirklich nur Gas und
Wasser offen. Wasser kann man nen eigenen Zähler nachschalten, bei Gas
isses halt nun mal unmöglich...
Ich habe allerdings große Probleme den Gaszähler zu digitalisieren da
ich noch ein paar Problemchen lösen muss:
1) Kriechkeller ohne Steckdosen
2) sehr schlechter WLAN Empfang
3) nicht beheizt und mehr oder weniger offen - also schwankende
Temperaturen und Luftfeuchtigkeit
Hallo,
auch meine Gedanken.
Vom Preis umsetzbar, aber sehr umfangreich. Kameras habe ich wohl, aber
ich muss es auch verstehen.
Die Freigabe, zur Montage des Impulsgebers, habe ich inzwischen vom
Netzbetreiber, aber Sie wollen Fotos haben, ob er korrekt ohne "Schaden"
eingebaut wurde. Der Originalgeber kostet 100 Euro, für ein
Reed_Kontakt. Das ist Wucher und ist unverschämt, mit mir nicht!
Werde mich mal schlau machen über LINEAR IMAGE Sensoren wie IC-LF1401
allerdings einfache, ist eine alternative.
Ja eHZ, vorarbeiten habe auch schon durchgeführt, bzw. die Machbarkeit.
Allerdings habe ich noch einen alten Haupt_Zähler (69). Habe mir für
jede Etage einen eigenen Zähler emMe4.0 gekauft (a.60€), 2 davon konnte
ich in den Zählerkasten einbauen und einen Vorort. Geeicht und wichtig
mit Pin. Funktioniert mit Arduino.
In NRW wurde meines wissend der Einbau eHZ vorerst gestoppt. Habe es
auch über SDM xxxM Zähler getestet funktioniert auch sehr gut.
Dein Installateur baut Dir auch einen zweiten Gas-Zähler ein, bekommst
Du "auch günstig" im Netz.
Da hatte ich Glück, 2Meter Deckenhöhe, Nachbar hatte dies auch nicht.
Aber auch schon 2 mal Wasser, jetzt endlich dicht.
Obwohl die neue Fritzbox nur 10 Meter im Erdgeschoss montiert ist, auch
kaum Empfang. Habe die alte Fritzbox 7390 in den Keller gestellt, nicht
super aber geht. Jeder Meter zählt.
Langfristig wird hier (Keller) wohl wieder auch der CAN-Bus oder Modbus
seinen Dienst tun.
Das hört sich nach sehr viel Arbeit an, kenne ich nur zu Gut. Habe
schonmal mit eine Haushälfte unterkellert.
Da treten grundsätzlich immer Spielerein in den Hintergrund.
Ja das ist alles nicht so einfach... aber ich denke für den Gaszähler
werde ich tatsächlich dann nochmal Strom in den Keller legen und ggf.
gleich Ethernetkabel, was ich dann ja direkt am ESP32 "konsumieren"
kann. Kabel ist sowieso charmanter als Wifi.
Aber...ich werde hier noch bekloppt. Bin gerade dabei eine Platine zu
bauen damit der ganze Kabelsalat mal verschwinden kann.
Der CAN-Bus macht mich aber wahnsinnig.
Disclaimer: Alles was ich über Schaltungen und Elektrik weiß hab ich mir
irgendwie selbst angeeignet durch viel lesen und rumprobieren aber so
wie es aussieht habe ich meinen Endgegner gefunden.
Ich habe das kleine CAN-Modul 1:1 nachgebaut, mit MCP2515 und TJA1050.
Skizze hängt an.
Auf dem Schreibtisch zwischen anderen Modulen (auch selbst gebaut)
funktioniert das wunderbar aber am Lebendobjekt empfange ich nur
Nachrichten, kann aber keine senden.
Aktuell läuft das ganze mit dem Modul auf 3V3 aber der Transceiver
sollte ja schon seine 5V bekommen um die Pegel richtig ausgeben zu
können. So wurde es mal jedenfalls an vielen Stellen gesagt.
Das seltsame ist, dass das fertig gekaufte Modul bis jetzt auf jedem BUS
funktioniert hat - egal ob am Auto oder an der Heizung und das trotz
3V3...
Ich vermute ja schon fast die Heizung erwartet da ganz andere Pegel als
offiziell beschrieben...
Ich bau das jetzt nochmal auf 3v und teste das. Wenn das geht versteh
ich erstens die Welt nicht mehr und bin kein Deut schlauer geworden aber
wenigstens könnte es dann so klappen. Wäre nur sehr hilfreich zu
verstehen warum in diesem Fall das Senden nicht funktioniert.
Hi,
ich denke auch, das die Pegel vom PCA82c250 (BM1) nicht richtig erkannt
werden, oder verfälscht werden.
Meldet der TA den Fehler oder dein Programm.
Kannst Du den Pegel messen?
Oder ziehe mal den Abschluss 120 Ohm auf deiner Platine.
Hast Du eine gemeinsame Masse GND, BM1 ---> Platine (Masseversatz!)
3Leitungen!
Ich hatte ähnliche Probleme, die auch nicht gelöst habe, funktionierte
nur ohne Abschluss. Der Pegel brach total zusammen.
Hallo Dave,
verstehe deine Logik nicht.
Der MCP2515 arbeitet im 3V3 Bereich mit dem Esp und scheinbar auch mit
dem TJA--alles gut.
Die Can-Bus Versorgung ist 5,0 V, da ist "nichts zu ändern"~ und wenn Du
sendest belastest Du auch den Bus und dies scheint doch nicht
einheitlich zu sein. Hier kommt der Sender als auch der Empfänger als
Ursache in Frage.
Alle anderen verstehen dein Senden (wie Du sagst) nur der BM1 nicht.
Can-Bus ohne und mit deiner Schaltung messen, bzw. passiv aktiv mein
Vorschlag.
Da muss was zu sehen sein und warum dann noch weiter heruntergehen in
der Vorfeldkommunikation?
Und wenn ein Neuaufbau !nach! der "Fehlerbeseitigung" bzw. Anpassung auf
der evtl. der "alten Platine".
Ahhhh...danke Peter! Das macht dann alles Sinn.
Naja gut ich probiere das jetzt nochmal mit der Eigenentwicklung ohne
Abschluss.
Irgendeine Kombination muss ja wohl funktionieren.
Hallo,
ich möchte das Projekt von Dave auf Github aufgreifen und umsetzen.
ich habe einen Junkers Brennwertkessel ZB 7-22 A23 mit einem BM1 und
einer TA250
Die Anlage wurde wohl nie richtig eingestellt.
Ich habe 2 Kreisläufe, einen im Keller mir normalen Heizkellern, die
eigentlich nur bei Parties benutzt werden und ich normaler weise gerne
auf Frostschutz schalten würde.
Das EG und OG sind komplett mit Fussbodenheizung ausgestattet,
allerdings nur im OG eine Einzelraumsteuerung.
Das EG wird aktuell nur mit festen Drehreglern bedient, wobei keiner
weis wie die denn einzustellen sind und es wird munter dran
rumgeschraubt.
Meine Idee wäre es jetzt das EG mit mehreren Aquara Temp sensoren
auszustatten und über die Messung der Rücklauftemp die Bodenheizung
abzugleichen. die Raumtemp des EG (eigentlich komplett offen) über die
Vorlauftemp zu steuern.
Was mir fehlt ist, die Anleitung der Verkabelung der Komponenten.
Kann ich zu dem ESP32 diese Modul von Amazon für den Can-Bus nutzen?
https://www.amazon.de/gp/product/B07MY2D7TW/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1
Wenn ja, wie genau schliesse ich es an den ESP32 und die Anlage an?
Wäre schön, wenn ihr mich bei meinen Projekt unterstützen könntet.
Vielen Dank im voraus.
Gruß
Hans
Hallo,
ich persönlich halte von dieser Can-Bus Platine nichts, such Dir eine,
die den Can Kontroller mit 3,3V versorgt (oder kann) und den Treiber mit
5V versorgt.
Meine Empfehlung Watterott Can-Bus Version 2, die kannst Du auf ESP32
UNO aufstecken und den SPI vervollständigen. So hast Du keine SPI BUS-
oder Gehäuse- (Mega_Gehäuse) noch Verdrahtungsprobleme.
Du solltest Dich doch etwas genauer mit SPI und CAN-Bus
auseinandersetzen. Auch als Bastler für Arduino und ESP ist SPI ein
muss. Die Verdrahtung sollte Dir dann keine Probleme machen. (10min)
Der Can-Bus sollte immer mit Masse betrieben werden. Der Masseversatz
ist oft die Fehlerquelle. Kein Abschlusswiderstand auf Can_Platine im
direkten Bereich des Bedienteils, der Heizung oder des Kabels.
Die alten Junkersheizungen existieren nach wie vor.....
Peter
Die Verkablung steht im Wiki. Das Modul wird funktionieren. Ich habe das
gleiche im Einsatz. Doch Achtung: Die kommen immer mit 8MHz Kristallen -
wir brauchen aber 16MHz damit es ohne Sourceanpassung läuft. Ansonsten
muss nämlich nebst der Frequenz die Datenrate verdoppelt werden, damit
es wieder stimmt.
https://github.com/Neuroquila-n8fall/JunkersControl/wiki/Cabling
Melde dich einfach, wenn's klemmt ;)
Hallo Experten
So habe es endlich auch geschafft den Aufbau zu realisieren.
Ich habe mich hier mal von oben ab wirklich dem Thema angenähert und mir
beide Komponeten zuerst organisiert.
1. BM1
2. TA250
Danach habe ich die beiden an die CeraSmart angeschlossen und um das CAN
Interface erweitert.
Allerdings verwende ich ein CAN Interface von PEAK als USB Version.
Das lag hier noch herum.
Als System Basis wurde dieses CAN Modul einfach an den Raspi mit
Volkszähler Image angeschlossen.
Die Doku dazu ist ja unter:
https://wiki.volkszaehler.org/hardware/channels/heating_control/gastherme_junkers_can_bus
zu finden.
Leider bekomme ich aber mit dem Beispiel Script, welches dort von
"Trabant" freundlicherwise abgelegt ist, eine Fehlermeldung im Terminal,
welche ich absolut nicht interpretieren kann, außer das ich mir die
dazugehörigen Zeilen dazu im Code anschauen kann.
Leider kenne ich mich mit bash nicht aus.
Daher die Farge hier:
inZeile42:VAL="$( echo -e "ibase=16;obase=A;$(echo-e${LINE}|cut-c14-15)" | bc )"
2
3
inZeile68:elif[[$(echo"$VALUE > 80"|bc)-eq1]]
4
5
inZeile63:VALUE="$( echo "scale=1;${VAL}/2" | bc )"
Vielleicht hat ja jemand von Euch auch ein lauffähiges script für
Volkszähler oder kann mir einen Denkanstoß geben wo ich suchen muss.
Vielen Dank vorab.
Grüße Denny
Das gehört eigentlich in ein Linux Forum hehe...
Dir fehlt der commandline-calculator "bc". Dadurch schlagen alle
folgenden Kommandos auch fehl.
Müsste Debian sein, daher versuche mal
Hallo Dave
Danke für den Tipp das hatte ich zwischenzeitlich schon nachinstalliert.
Leider erhalte ich nicht die Daten die ich dachte.
Obwohl die CAN ID's am Bus sind. Das wäre z.B die ID(207) welche für die
Außentemperatur steht. Auf dem Bus ist diese da und ich kann diese auch
plausibel umrechnen nur leider wird diese im VZ nicht angezeigt.
Ich verwende allerdings auch eine andere CAN Schnittstelle als hier
beschrieben. Aber da ich die Daten am BUS sehe gehe ich nicht davon aus,
dass es an der Hardware liegt außer es gäbe Unterschiede bei den BM1 &
T250 Modulen in Kombination mit der jeweiligen Therme.
Vielleicht kann da jemand weiterhelfen der sich auskennt.
Vg denny
Hallo,
ich habe einen geregelten Kreis (mit HMM), auf der Thermenseite hängt
nur das Warmwasser drauf.
Meine eigene Steuerung läuft seit Monaten ohne Probleme.
Ich hänge mit einem Raspi zwischen TA270 und dem Rest (HMM und Therme),
lese die Can-IDs ein und schicke die geänderten Daten dann an den Rest
weiter.
Das klappt wunderbar, jetzt gehts ans optimieren.
Die Therme, bzw. der HMM bekommt jeweils eine Soll-Temperatur.
0x405: #Soll Mischkreis
0x252: #Soll Heizungs VL
Aktuell ist es so umgesetzt, wünsche ich eine Solltemperatur im
Mischkreis von z.B. 35°C, gebe ich das so aus und als Soll-Temperatur
des Heizkreises gebe ich einfach 5°C mehr aus, also 40°C.
Wie macht ihr das? Die beiden Temperaturen hängen ja zusammen? Da kann
es doch zu Problemen kommen wenn die Vorgaben nicht einregelbar sind?
Ich hab da noch einen Knopf im Hirn.
Hat so ein Setup schon jemand von euch umgesetzt?
sg
Martin
Hallo Martin,
beachtlich hohe Ziele, optimieren geht das noch oder macht das noch
Sinn?
Bei einer 21%igen Gaspreiserhöhung im West Bereich. Zumal die 11%
Kondensationswärme, die jeder bezahlt, selbst die Fußbodenheizer nur zum
Teil nutzen können und vor Allem das tiefe tiefe schwarze Loch der
Gasanlieferung. Das Gas, das nur einmal im Monat auf seine Parameter und
Bestandteile untersucht werden braucht!! Sowie das Gerücht der
erloschenen Gasflamme, das nicht versiegt.
Das sind alles reale negative Punkte die in die andere Richtung gehen,
da liegt deine Optimierung eher im Bereich der eigenen Herausforderung
und trotzdem hat sie hier jeder...blabla.
Wieso Du hast Du einen ganzen Regelkreis ungenutzt, oder erfordert die
Fußbodenheizung diese Maßnahme?
Martin R. schrieb:> Ich hänge mit einem Raspi zwischen TA270 und dem Rest (HMM und Therme),
Sicher meinst Du das "mit am CAN-Bus" hängst. Das der Rest bzw. Ofen,
sowohl Ta270 Daten als auch die Raspi Daten "neu" empfängt ist dir
sicher auch bewusst. Genau so wie die Tatsache das Du ein Außenfühler
hast und ein Regelkreis mit Ausgang Vorlauftemperatur hierfür.
Statische Daten sind eher Eckpunkte, genau so wie Temperaturunterschiede
zwischen Ofen und einem weiteren Regelkreis (Beschreibung).
Vielleicht solltest Du beim Dave SW mal reinschauen und verstehen.
Nach richtig regeln kommt dann optimal auf dein Haus bezogen.
Gruß
Hallo Peter,
den ersten Teil verstehe ich nicht, optimieren bedeutet für mich eher
meinen inneren Trieb hinsichtlich technischer Spielerein (ob sinnvoll
oder nicht sei dahingestellt - jeder braucht Hobbys :)) zu befriedigen.
Peter schrieb:> Wieso Du hast Du einen ganzen Regelkreis ungenutzt, oder erfordert die> Fußbodenheizung diese Maßnahme?
Ja die Fußbodenheizung erfordert das vermutlich, der Volumenstrom ist
für die Therme alleine zu groß, deshalb ist eine hydraulische Weiche +
Zusatzpumpe notwendig. 100% kann ich das aber nicht sagen, da ich das
Haus samt Heizung gebraucht gekauft habe und somit keine
Planungsunterlagen zur Heizungsauslegung habe. So ist die Heizung
zumindest aufgebaut, mit der Hoffnung der Erbauer hat sich dabei was
gedacht :)
So wie ich geschrieben habe, ich hänge dazwischen, sprich, ich lese die
CAN Botschaften (die von der TA270) mit einem Kanal ein und leite diese
Nachrichten an den Rest (über einen zweiten CAN-Kanal) weiter und vice
versa. Der Ofen bekommt also nicht 2 Nachrichten, sondern natürlich nur
eine, alles andere macht ja null Sinn. Also soweit bin ich schon :)
"dazwischen" werden die Nachrichten dahingehend geändert, als dass ich
die Vorlauftemperaturen selbst vorgebe und nicht wie "normal"
der/die/das TA270.
Das funktioniert auch ohne Probleme, die tatsächliche Regelung der
Vorlauftemperatur macht ja die Therme und HMM, da pfusche ich nicht
rein, ich will nur die Sollwerte sinnvoll vorgeben!
Peter schrieb:> Genau so wie die Tatsache das Du ein Außenfühler> hast und ein Regelkreis mit Ausgang Vorlauftemperatur hierfür.
Ich will hier keine Diskussion mit "Regelkreis Außenfühler und
Vorlauftemperatur" starten. Wo ist eigentlich der Regelkreis mit Ausgang
Vorlauftemperatur? Das ist nichts anders als eine Sollwertvorgabe mit
Eingang Außentemperatur und hat mit Regelung nichts zu tun.
Peter schrieb:> Statische Daten sind eher Eckpunkte, genau so wie Temperaturunterschiede> zwischen Ofen und einem weiteren Regelkreis (Beschreibung).
Verstehe ich nicht? Was heißt das?
Ich würde gerne wissen, gibts hier jemanden der einen geregelten
Heizkreis hat (hydr. Weiche und HMM) und ebenfalls die Sollwerte selbst
vorgibt. Und konkret wie? Mit "wie" meine ich nicht die technische
Lösung (die klappt bei mir problemlos), sondern wie löst ihr das
Problem, dass die beiden Sollwerte zusammenhängen - der Zusammenhang
interessiert mich.
sG
Martin
Hallo,
der erste Teil war vielleicht die wichtigste Aussage.
Mit dem Volumenstrom usw. sehe ich genau umgekehrt egal...
Can-Bus okkkk, und wenn er ausfällt?
Martin R. schrieb:> ch will hier keine Diskussion mit "Regelkreis Außenfühler und> Vorlauftemperatur" starten. Wo ist eigentlich der Regelkreis mit Ausgang> Vorlauftemperatur? Das ist nichts anders als eine Sollwertvorgabe mit> Eingang Außentemperatur und hat mit Regelung nichts zu tun.
Hast Du vollkommen Recht, falsch ausgedrückt, meine Worte hier :-( ,
habe im Block gedacht.
Wenn der nicht genutzt wird müssen die Werte per Telegramm versendet
werden.
Aber, wirst sicher die Lösung finden..
Gruß
Hallo Martin,
habe mir die Beschreibung TA270 & HMM mal kurz vorgenommen.
Genauer Bild 3:HMM und 3.7.12 Heizkurve festlegen TA270: Hast Du ein
TF20?
Du hast 2 unterschiedliche Kreise!
Der 2. wird vom 1. gespeist. Mehr Gemeinsamkeiten dürfte es nicht geben.
Scheinbar 0x252 >= 0x405 (MF1)
Zwei Heizkurven.
Martin R. schrieb:> sondern wie löst ihr das> Problem, dass die beiden Sollwerte zusammenhängen - der Zusammenhang> interessiert mich.
Du hast doch auch nur ein Ofen! Die Heizkurve 2 muss immer kleiner als
die Heizkurve 1 sein, also auch der Soll.
Sehe hier kein Problem. Du hast doch auch so gehandelt, nur annähernd
(save) identisch gibt doch nur Sinn.
Hallo,
ich bin jetzt soweit, das ich mir das Projekt von Github ansehe und den
CanBus als erstes abhören möchte.
Ich habe das Projekt als Zip runtergeladen, entpackt, in den
Projektordner verschoben und in Visual studio geöffnet.
Nun habe ich die ArduinoSecret.h_template in Arduino_Secret.h umbenannt
und dort meine Daten eingegeben.
In der Platformio.ini habe ich aus m5ez/ezTime@^0.8.3 -->
ropg/ezTime@^0.8.3 gemacht, das er erstes wohl nicht findet.
upload_protocol = espota
upload_port = 10.0.0.6
habe ich entfernt, da er den ESP32 für den Upload nicht gefunden hat.
In der Main.cpp habe ich bool Override auf false gesetzt, damit ich
erstmal nur abhören kann.
Wenn ich nun build drücke , bekomme ich folgende Fehlermeldungen:
src\mqtt.cpp: In function 'void callback(char*, byte*, unsigned int)':
src\mqtt.cpp:255:9: warning: unused variable 'i' [-Wunused-variable]
int i = s.toInt();
^
src\main.cpp: In function 'void loop()':
src\main.cpp:188:150: warning: format '%i' expects argument of type
'int', but argument 4 has type 'long int' [-Wformat=]
sprintf(printbuf, "DEBUG STEP CHAIN #%i: Date and Time DOW:%i
H:%i M:%i", currentStep, myTZ.dateTime("N").toInt(), myTZ.hour(),
myTZ.minute());
^
src\main.cpp:188:150: warning: format '%i' expects argument of type
'int', but argument 4 has type 'long int' [-Wformat=]
und
.pio\libdeps\az-delivery-devkit-v4\OneWire\OneWire.cpp: In member
function 'uint8_t OneWire::reset()':
.pio\libdeps\az-delivery-devkit-v4\OneWire\OneWire.cpp:167:24: warning:
unused variable 'reg' [-Wunused-variable]
volatile IO_REG_TYPE *reg IO_REG_BASE_ATTR = baseReg;
^
.pio\libdeps\az-delivery-devkit-v4\OneWire\OneWire.cpp: In member
function 'void OneWire::write_bit(uint8_t)':
.pio\libdeps\az-delivery-devkit-v4\OneWire\OneWire.cpp:201:24: warning:
unused variable 'reg' [-Wunused-variable]
volatile IO_REG_TYPE *reg IO_REG_BASE_ATTR = baseReg;
^
.pio\libdeps\az-delivery-devkit-v4\OneWire\OneWire.cpp: In member
function 'uint8_t OneWire::read_bit()':
.pio\libdeps\az-delivery-devkit-v4\OneWire\OneWire.cpp:229:24: warning:
unused variable 'reg' [-Wunused-variable]
volatile IO_REG_TYPE *reg IO_REG_BASE_ATTR = baseReg;
^
und
C:\Users\hanse\.platformio\packages\framework-arduinoespressif32\cores\e
sp32\esp32-hal-spi.c: In function 'spiTransferBytesNL':
C:\Users\hanse\.platformio\packages\framework-arduinoespressif32\cores\e
sp32\esp32-hal-spi.c:922:39: warning: initialization from incompatible
pointer type [-Wincompatible-pointer-types]
uint8_t * last_out8 = &result[c_longs-1];
^
C:\Users\hanse\.platformio\packages\framework-arduinoespressif32\cores\e
sp32\esp32-hal-spi.c:923:40: warning: initialization from incompatible
pointer type [-Wincompatible-pointer-types]
uint8_t * last_data8 = &last_data;
^
und
Linking .pio\build\az-delivery-devkit-v4\firmware.elf
.pio\build\az-delivery-devkit-v4\src\heating.cpp.o:(.data.mqttPASSWORD+0
x0): multiple definition of `mqttPASSWORD'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttPASS
WORD+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\heating.cpp.o:(.data.mqttUSERNAME+0
x0): multiple definition of `mqttUSERNAME'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttUSER
NAME+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\heating.cpp.o:(.data.mqttSERVER+0x0
): multiple definition of `mqttSERVER'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttSERV
ER+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\heating.cpp.o:(.data.SECRET_PASS+0x
0): multiple definition of `SECRET_PASS'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_P
ASS+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\heating.cpp.o:(.data.SECRET_SSID+0x
0): multiple definition of `SECRET_SSID'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_S
SID+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\main.cpp.o:(.data.mqttPASSWORD+0x0)
: multiple definition of `mqttPASSWORD'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttPASS
WORD+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\main.cpp.o:(.data.mqttUSERNAME+0x0)
: multiple definition of `mqttUSERNAME'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttUSER
NAME+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\main.cpp.o:(.data.mqttSERVER+0x0):
multiple definition of `mqttSERVER'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttSERV
ER+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\main.cpp.o:(.data.SECRET_PASS+0x0):
multiple definition of `SECRET_PASS'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_P
ASS+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\main.cpp.o:(.data.SECRET_SSID+0x0):
multiple definition of `SECRET_SSID'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_S
SID+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\mqtt.cpp.o:(.data.mqttPASSWORD+0x0)
: multiple definition of `mqttPASSWORD'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttPASS
WORD+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\mqtt.cpp.o:(.data.mqttUSERNAME+0x0)
: multiple definition of `mqttUSERNAME'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttUSER
NAME+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\mqtt.cpp.o:(.data.mqttSERVER+0x0):
multiple definition of `mqttSERVER'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttSERV
ER+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\mqtt.cpp.o:(.data.SECRET_PASS+0x0):
multiple definition of `SECRET_PASS'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_P
ASS+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\mqtt.cpp.o:(.data.SECRET_SSID+0x0):
multiple definition of `SECRET_SSID'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_S
SID+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\ota.cpp.o:(.data.mqttPASSWORD+0x0):
multiple definition of `mqttPASSWORD'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttPASS
WORD+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\ota.cpp.o:(.data.mqttUSERNAME+0x0):
multiple definition of `mqttUSERNAME'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttUSER
NAME+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\ota.cpp.o:(.data.mqttSERVER+0x0):
multiple definition of `mqttSERVER'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttSERV
ER+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\ota.cpp.o:(.data.SECRET_PASS+0x0):
multiple definition of `SECRET_PASS'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_P
ASS+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\ota.cpp.o:(.data.SECRET_SSID+0x0):
multiple definition of `SECRET_SSID'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_S
SID+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\t_sensors.cpp.o:(.data.mqttPASSWORD
+0x0): multiple definition of `mqttPASSWORD'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttPASS
WORD+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\t_sensors.cpp.o:(.data.mqttUSERNAME
+0x0): multiple definition of `mqttUSERNAME'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttUSER
NAME+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\t_sensors.cpp.o:(.data.mqttSERVER+0
x0): multiple definition of `mqttSERVER'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttSERV
ER+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\t_sensors.cpp.o:(.data.SECRET_PASS+
0x0): multiple definition of `SECRET_PASS'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_P
ASS+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\t_sensors.cpp.o:(.data.SECRET_SSID+
0x0): multiple definition of `SECRET_SSID'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_S
SID+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\wifi_config.cpp.o:(.data.SECRET_PAS
S+0x0): multiple definition of `SECRET_PASS'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_P
ASS+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\wifi_config.cpp.o:(.data.SECRET_SSI
D+0x0): multiple definition of `SECRET_SSID'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.SECRET_S
SID+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\wifi_config.cpp.o:(.data.mqttPASSWO
RD+0x0): multiple definition of `mqttPASSWORD'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttPASS
WORD+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\wifi_config.cpp.o:(.data.mqttUSERNA
ME+0x0): multiple definition of `mqttUSERNAME'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttUSER
NAME+0x0): first defined here
.pio\build\az-delivery-devkit-v4\src\wifi_config.cpp.o:(.data.mqttSERVER
+0x0): multiple definition of `mqttSERVER'
.pio\build\az-delivery-devkit-v4\src\can_processor.cpp.o:(.data.mqttSERV
ER+0x0): first defined here
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\az-delivery-devkit-v4\firmware.elf] Error 1
========================================================================
= [FAILED] Took 10.19 seconds
========================================================================
=
Der Terminalprozess
"C:\Users\hanse\.platformio\penv\Scripts\platformio.exe 'run'" wurde mit
folgendem Exitcode beendet: 1.
Hier komme ich einfach nicht weiter.
Ich verstehe den Code nur rudimentär, aber vielleicht. kann mir ja hier
einer helfen.
Zudem habe ich von Telnet keinen Plan, und weis nicht wie ich das
einrichten soll.
Danke und Gruß
Hans
Hans-Jürgen Ehls schrieb:> ich bin jetzt soweit, das ich mir das Projekt von Github ansehe und den> CanBus als erstes abhören möchte.
Zum CAN-Bus ablauschen gibt es kleine CAN-USB Module. Eine Seite CAN-Bus
anschließen und andere Seite in den USB-Port stöpseln und dann mit einem
Terminal für serielle Schnittstelle die Daten absaugen.
Wenn ich mich nicht ganz vertue, kann man mit den Teilen auch ein paar
Daten auf den CAN-Bus senden. Und wenn ich mich nicht ganz vertue habe
ich sowas schonmal gemacht mit einen Python Skript, das auf eine andere
UART was ausgibt und das kommt dann auf dem CAN. So ein CAN-USB Teil
kostet nur ein paar Euros.
Hans-Jürgen Ehls schrieb:> warning: unused variable> [...]> warning: initialization from incompatible pointer type
[-Wincompatible-pointer-types]
Diese Warnung könnte man erstmal ignorieren.
Hans-Jürgen Ehls schrieb:> multiple definition of `mqt...'> blabla\can_processor.cpp.o:(.data.mqt... > WORD+0x0): first defined here
Da wurde das Projekt falsch zusammengestellt bzw. die Konfiguration des
Projekts ist schief. Irgendwelche Files sind doppelt drin bzw. gehören
da nicht rein oder ein Compiler-Parameter ist zuviel (Projekt
Konfigurationsfehler).
> Ich verstehe den Code nur rudimentär, aber vielleicht. kann mir ja hier> einer helfen.
Nochmal genau hinkucken, wo was definiert wird und wo was doppelt
definiert ist und dann die richtigen Files rauswerfen bzw. irgendwo in
den Compiler-Einstellungen irgendwelche "-Include ..." rauswerfen bzw.
richtig setzen. Vllt. ist auch ein Ordner im Projekt, der da nicht
hingehört. Jedenfalls ist das mit "multiple definition of ..." ein
Fehler, den man lösen muss.
Peter schrieb:> sorry,...>> aber was hat das mit dem Thema zu tun.>> bitte--->ADMIN /verlegen/neu.
Hallo,
na ja das Thema hier verweist ja auf das Github Projekt. Wenn man das
dann nicht hinbekommt, fand ich schon das es hier hin gehört.
Ggf. könnte man hier, oder auch im Guthub Projekt selber eine
Installionsanweisung / - erklärung hinterlegen, für die nicht ganz so
fitten Programmierer.
Wir können das aber gerne auch in einem separaten Thema behandeln.
Gruß
Hans
Hallo Leute,
ich werde wahnsinig. Ich betreibe einen esp32 mit den Can-Bus Modulen
MCP2515 mit TJA1050. Die Spannungsversorgung für das TJA1050 ist
unterbrochen und auf 5V gelegt. Ich benutze die Libary MCP_can. Ich kann
Pakete senden und empfange diese auch. Jetzt mein Problem. Sobald ich
dir Rate auf 10KBs stelle klappt das Senden und empfangen nicht mehr.
Mit 500KBs geht es wieder. Ich habe diverse Module ausprobiert. Das
gleiche Phänomen habe ich auch wenn ich einen Wemos D1 mini als
Conroller nehme. Ich habe auch andere Libarys ausprobiert.
Sobald ich auf 10KBs kann ich nichts mehr empfangen.
Ich komme nicht mehr weiter. Kann mir einer helfen?
Für Tips und Tricks wäre ich sehr dankbar. Ich nutze den Code von dieser
Website:https://www.mittns.de/thread/558-selbstbau-canbus-verbindung-zwischen-2-oder-mehreren-arduinos/?postID=3411#post3411
Viele Grüße
Michael
Komisch... Ich betreibe den tja1050 und mcp2515 auf 3v auf 10kbit ohne
Probleme mit einem esp32.
Welche library benutzt du und wie viel MHz hat der oszi?
Hallo,
danke für die Antwort.
Ich benutze die MCP-Can Libary.
https://github.com/coryjfowler/MCP_CAN_lib
Welche benutz du?
Auf dem Oszi steht eine undefinierte Bezeichnung. Ich habe aber noch
zwei wo 8 Mhz draufsteht. Mit denen geht es aber auch nicht.
Kannst du mir deinen Code einmal zukommen lassen?
Viele Grüße
Michael
Michael schrieb:> Hallo,> danke für die Antwort.> Ich benutze die MCP-Can Libary.> https://github.com/coryjfowler/MCP_CAN_lib> Welche benutz du?> Auf dem Oszi steht eine undefinierte Bezeichnung. Ich habe aber noch> zwei wo 8 Mhz draufsteht. Mit denen geht es aber auch nicht.> Kannst du mir deinen Code einmal zukommen lassen?>> Viele Grüße>> Michael
@
Michael schrieb:> Hallo,> danke für die Antwort.> Ich benutze die MCP-Can Libary.> https://github.com/coryjfowler/MCP_CAN_lib> Welche benutz du?> Auf dem Oszi steht eine undefinierte Bezeichnung. Ich habe aber noch> zwei wo 8 Mhz draufsteht. Mit denen geht es aber auch nicht.> Kannst du mir deinen Code einmal zukommen lassen?>> Viele Grüße>> MichaelMichael schrieb:> Hallo,> danke für die Antwort.> Ich benutze die MCP-Can Libary.> https://github.com/coryjfowler/MCP_CAN_lib> Welche benutz du?> Auf dem Oszi steht eine undefinierte Bezeichnung. Ich habe aber noch> zwei wo 8 Mhz draufsteht. Mit denen geht es aber auch nicht.> Kannst du mir deinen Code einmal zukommen lassen?
@kosmos: Danke für die Links der Datenblätter. Ich vestehe nur nicht,
dass hier all den Junkers Can Bus mit dem MCP2515 mit 10KBs
mitschneiden. Siehe den Beitrag von Kay. Das Bild war er gepostet ist
doch eindeutig.
>> Viele Grüße>> Michael
Michael schrieb:> Ich vestehe nur nicht,> dass hier all den Junkers Can Bus mit dem MCP2515 mit 10KBs> mitschneiden.
Was bitte sollte dagegen sprechen? Läuft seit 5 Jahren bei mir.
Hallo Crazyhorse,
der Post von Kosmos sagt das dies nicht technisch funktioniert.
Deswegen habe ich mich gewundert das hier alle diese Konstalation
betreiben.
Ich wäre ja froh wenn es bei mir auch klappt.
Ich habe jetzt die ACAN2515 Lib. getestet und die ersten Versuche
scheinen mit 10KBS zu funktionieren.
Welche Libary benutzt du denn?
Viele Grüße
Michael
Morgen,
mir sind die Can_Module nur als 8MHz bekannt!? Kauf als xx MHz?
Die Datei hätte gereicht, sehr unübersichtlich "//..." !?
Welche Fehler treten auf!? Die Code gibt Fehler aus!?
Peter
Bitte sei so nett und formatiere deinen code entsprechend mit den code
tags oder hänge die Datei an (noch besser). Das ist so schwer bis
absolut nicht lesbar.
Mal ganz allgemein:
- Da die Oszis keine Angabe haben würde ich vermuten, dass diese mit
8MHz ausgeliefert wurden. Google spuckt ja auch nix zu aus. Schade.
Dementsprechend, wenn du mit 16MHz anrückst, klappt das nur bis zu einer
gewissen Bitrate aber kommst dann irgendwann nicht mehr tiefer.
- Prüfe auf der Konsolenausgabe ob die Initialisierung überhaupt
funktioniert. Ich wette das tut sie nämlich nicht.
Was zu prüfen ist:
- Initialisiere mit 8MHz und 10Kbit:
Wenn die Initialisierung fehlschlägt, dann hat es sehr wahrscheinlich
was mit dem Oszi zu tun. SPI sieht jedenfalls gut aus. Da das Teil nicht
gelabelt ist und man nicht weiß wie viel er nun hat, würde ich pauschal
einfach diese durch einen Austauschen von dem man den Wert kennt ;)
In dem Codebeispiel von mir verzichte ich gezielt auf Interrupt und gehe
über den Buffer. Um Nachrichten auszulesen liest man jeden Zyklus über
den Buffer, prüft ob es was gibt und verarbeitet dann:
1
CANMessageMessage;
2
if(can.receive(Message))
3
{
4
//Schau, was in "Message" drin ist.
5
}
Wenn das dann klappen sollte kannst du weiter deinen code benutzen...
Aber wie gesagt: Es steht und fällt mit dem verbauten Oszi. Gibt man
Grütze dann beim Initialisieren an, kommt auch Grütze raus ;)
Hallo Dave,
danke für die konstruktive Hilfe.
Ich habe die beiden Files angehängt.
Die initialisierung klappt.
Hier die Augabe auf der Console:
Empfänger:
11:01:24.692 -> Configure ACAN2515
11:01:24.692 -> Bit Rate prescaler: 16
11:01:24.692 -> Propagation Segment: 8
11:01:24.692 -> Phase segment 1: 8
11:01:24.739 -> Phase segment 2: 8
11:01:24.739 -> SJW: 4
11:01:24.739 -> Triple Sampling: yes
11:01:24.739 -> Actual bit rate: 10000 bit/s
11:01:24.739 -> Exact bit rate ? yes
11:01:24.739 -> Sample point: 64%
Sender:
Configure ACAN2515
Bit Rate prescaler: 16
Propagation Segment: 8
Phase segment 1: 8
Phase segment 2: 8
SJW: 4
Triple Sampling: yes
Actual bit rate: 10000 bit/s
Exact bit rate ? yes
Sample point: 64%
Sent: 1
Sent: 2
Sobald ich die Bit Rate auf 125KBs stelle empfange ich etwas.
Ich hatte noch 2 MCP2515 mit TJA1050 Modulen wo auf dem Osci 8MHz steht.
Auch hier das gleicher Ergebnis.
Ich bin ratlos.
Viele Grüße
Michael
Hallo,
vergesse nicht den Pullup_Widerstand. sowohl Cs als erst recht wenn Du
mit INT arbeitest. // [INT] total überflüssig!!
Habe auch den SPI, wie auch beschrieben gehändelt!! ESP32 ACAN2515....
hier CAN-Bus FD beschrieben.
Warum nicht so wie es Pierre beschreibt??
//----------------------------------------------------------------------
------
static const byte MCP2517_SCK = 18 ; // SCK input of MCP2517
static const byte MCP2517_MOSI = 23 ; // SDI input of MCP2517
static const byte MCP2517_MISO = 19 ; // SDO output of MCP2517
static const byte MCP2517_CS = 5 ; // CS input of MCP2517
static const byte MCP2517_INT = 27 ; // INT output of MCP2517
ACAN2517FD can (MCP2517_CS, SPI, MCP2517_INT) ;
Hallo,
versuch es bitte mal mit einer anderen ID (11 Bit) bzw. lade Dir die
neue SW herunter von ACAN2515 falls Du sie nicht innerhalb der letzten 6
Tage heruntergeladen hast.
2.1.0 : fixed extended frame reception
Michael schrieb:> Sobald ich die Bit Rate auf 125KBs stelle empfange ich "etwas".
Frage "etwas", das was Du sendest?? ist der Empfang korrekt.
Vielleicht auch mal einen Schritt zurückgehen und wieder die loopback
mode ausprobieren.(beide Module)
Peter
Aloha,
ich habe auf den Bildern gesehen, dass der Bus auf beiden Seiten
terminiert ist. Entferne mal die Terminierung auf der einen Seite. Laut
Spezi ist es nur vorgesehen am "Ende" zu Terminieren.
Das wird vermutlich das Problem mit der niedrigen Bitrate nicht beheben
aber ein sauberes Fundament ist wichtig ;)
Ich meine mich zu erinnern, dass manche ESP32s stark vereinfacht
ausgedrückt nicht in der Lage sind die Frequenz so niedrig zu drücken,
dass es für 10kbit/s reicht. Ich habe grundsätzlich nur Wroom32 Module
im Einsatz mit Devkit 4 Layout (diese haben eine stabilere
Spannungsversorgung, die nicht gleich bei jedem Spike in die Knie geht).
Mit denen funktioniert es. Habe einen dieser im Auto verbaut für
100kbit/s und einen an der Heizung mit 10kbit/s. Leider sehe ich auf den
Bildern das exakte Modell deiner Chips nicht.
Außerdem betreibe ich die Module ausschließlich ohne Interrupt, da das
sonst MQTT oder andere Peripherie zum "laggen" bringen kann (meine
Beobachtung - "Your milage may vary").
Kleine große Randnotiz: Wenn man nach Möglichkeiten sucht CAN-Bus mit
dem ESP32 zu verwenden, stößt man unweigerlich auch auf einen
Transceiver (SN65HVD230), den man direkt an die CAN-Fähigen Pins des
ESPs anklemmen kann. Finger weg davon, denn damit kommt man auch nicht
auf 10kbit/s und meine Tests mit 100kbit/s am Auto verliefen auch
fruchtlos und dabei sei gesagt, dass der CAN-Bus im Auto außerordentlich
stabil und Fehlertolerant läuft. Auch das Nachbauen des Moduls auf eine
Platine hat nie wirklich funktioniert. Auch wenn die beiden Platinen
miteinander kommunizieren konnten funktionierte das weder an der Heizung
noch am Auto. Dabei waren die Komponenten 1:1 identisch mit dem
gekauften Modul. Es gibt also anscheinend dramatische Unterschiede bei
den Chips die dazu führen, dass etwas nicht sauber funktioniert.
Ich habe auch hierzu mal einen Controller aus dem Auto auseinander
genommen und gecheckt, was der Hersteller da gemacht hat und
festgestellt, dass auch hier der MCP2515 und TJA1050 zum Einsatz kommen.
Ferner gibt es auch noch dramatische Unterschiede zwischen den
Frameworks. Ich benutze nun das "offizielle" ESP32 Framework zum
kompilieren, statt das was extra für das AZ-Delivery Ding bereitgestellt
wurde. Vorher gab es nämlich dabei auch Probleme. Ich habs mir leider
nicht notiert aber ich erinnere mich damit auch das Sendeproblem behoben
zu haben, was mit den älteren Wroom32 aufgetreten war (Das Devkit, wo
die Antenne nicht über das Board herausragt)
Zusammengefasst:
Wroom32[U] + "NiRen" gelabeltes CAN-Modul mit 16MHz Oszi funktioniert in
meinen Umgebungen tadellos mit dem exakten Code der in meinem Repo drin
ist sowie des Beispielcodes von ACAN2515.
Hallo Dave,
ich habe mir gerade genau dein Setup bestellt.
Danke für die Unterstützung.
Ich gebe Rückmeldung sobald die HW da ist.
In der Zwischenzeit teset ich mit der vorhandenen HW weiter.
Viele Grüße
Michael
Hallo,
nun hatte mir gestern ebenfalls die Bilder nochmals angeschaut, aber
hatte eher an den nicht gesetzten Abschluss geglaubt bzw. gehofft.
Ein !Can-Bus! hat zwei Enden und zwei Abschlüsse zu je ~120 Ohm (bzw.
insgesamt !! ~60 Ohm Belastung). Das ist die Vorgabe, habe gerade im
Automotiv_Bereich Geräte gesehen, die hier eingestellt werden konnten
(>2).
Halte Micheals Einstellung, in diesem Fall ohne BM1, aber für richtig
und notwendig.
Mir ist aber aufgefallen das eine Masseverbindung zwischen den
Teilnehmern, wohl vorhanden war, aber nicht angeschlossen wurde (sw
Leitung). Muss nicht, aber kann zum Fehler führen. Weiterhin existiert
so eine gewisse Sicherheit. Ein späterer Masseversatz zum BM1 kann sehr
teuer werden.
Was bitte hat die Can-bus Bitrate mit der SPI Frequenz zu tun? Der
MCP2515 ist ein eigenständiger Controller. Nun in wie weit die SW von
Pierre die HW bei der Installation wirklich kontrolliert, ist mir nicht
bekannt. Aber die hat doch geklappt. "No error" ... oder? beide.
Michael schrieb:> }else{> Serial.print ("Configuration error 0x") ;> Serial.println (errorCode, HEX) ;
Daraus folgt doch, das mit der HW Unsicherheit des Can-Bus Moduls, nur
noch 3 Punkte existieren die zum Fehler führen.
Der Interrupt von der ACAN_SW hat mich nie überzeugt. Ich sehe bei
Michael auch keine Widerstände verbaut!! noch hat er darauf geantwortet.
Das gleich gilt für CS.
Der 5V Voltanschluss ist vielleicht nicht korrekt bzw. Teil
geschrottet....
2 mal wurde gesendet "Sent" oder? Kein Antwort...?
Funktionieren denn beide Modul noch in der loopback Mode, keine Aussage!
nicht kontrolliert!??
Wie schon mal erwähnt habe ich ein andere Can-bus Module verwendet. Das
Can-Modul lief bis auf einen Massefehler, der das Can-Modul geschrottet
hat, mit UNO, STM32, ESP8266 d1 bzw.(R2) und ESP32 (von bis-irgendwas)
problemlos.
Das auf dem Markt die Qualität der Module sehr unterschiedlich, ja sogar
teilweise unmöglich ist, kann ich nur bestätigen, aber.. Michael hat wie
er schrieben hat doch die Can Module schon ausgetauscht. Doch, sehr
unwahrscheinlich .
Qualität:
Nun bevor ich allerdings ein Texas Bauteile anzweifele würde ich eher
auf MCP und ESP tippen, hier werden Daten erhoben die einfach nicht
vorhanden sind oder nicht stimmen. Der MCP2515 hat jahrelang im
Datenblatt Einstellungen aufgeführt, die gar nicht funktionierten.
Habe 20 Jahre im Automotiv gearbeitet und habe nicht einmal mit MCP
Can-Controller zutun gehabt, außer in der Can-Bus Karte der Firma zur
Steuerung des Testsystems. Beurteilung lasse ich hier lieber.
Mein Ratschlag an Michael:
Vereinheitliche deine Installation Sender Empfänger mit 8MHz
kein INT,
CS mit 10 K Widerstand an 3,3V.
5 Volt Anschluss Kontrolle,
Module mit Loopback Mode testen.
Dann auf Normalmode Can Bus richtig anschließen. evtl. messen.
GND1 an GND2.
Peter
Peter, ich weiß dein Wissen in dem Bereich zu teilen wirklich sehr zu
schätzen. Natürlich hast du Recht mit der Terminierung. Ich habe hier
was mit meinem Auto verwechselt, wo ich mich ja einfach nur anflansche
und der Bus ja bereits durch die vorhandene Infrastruktur korrekt
terminiert ist.
Jedoch gibt es Hinweise drauf, dass der ESP32 nicht in der Lage ist den
Can-Controller richtig zu initialisieren, wenn die interne Taktung da
nicht passt. Den genauen technischen Hintergrund weiß ich gerade auch
nicht mehr, hat aber sicher was mit der SPI Schnittstelle zu tun und wie
die internen Oszis geschaltet sind. Ich erinnere mich dass es da sogar
Konflikte gab, wenn Wifi noch mit angesteuert wurde und dass da eine
gewisse Chiprevision nicht mit klar kam.
Meine Tests wie gesagt haben ergeben, dass nicht nur der Controller
manchmal in Schieflage gerät, obwohl die Konfigurationsregister korrekt
angenommen werden, sondern auch das verwendete Framework zum Kompilieren
erheblichen Einfluss auf die Sende- und Empfangsstabilität nimmt. Mit
dem "falschen" Framework musste ich teils eine Seite neu starten, damit
die Kommunikation wieder funktioniert. Wir sind hier natürlich eindeutig
in der Domäne des ESPs und dessen SPI Interface und ich denke hier liegt
auch ultimativ der Hund begraben. Diese "Wemos" ähnlichen Module sind
anscheinend nicht wirklich zuverlässig. Aus einem anderen Fall weiß ich,
dass diese nicht zuverlässig funktionieren. Ich vermute hier wurden alte
Revisionen mit Firmware Bugs verbaut. Das würde dann auch den teils sehr
niedrigen Preis erklären.
Was ich allerdings sicher mittlerweile weiß ist, dass es massive
Unterschiede gibt bei den ESP "Wroom32" Modellen und deren zickigkeit in
Bezug auf Peripherie - und natürlich wie die Module bestückt worden
sind. Das führt dann auch zu unerklärlichen Phänomenen. Deswegen beziehe
ich mich da einfach auf meine Konfigurationen, die reibungslos
funktionieren und benutze diese als "Richtwert".
Ich vermute mal ganz stark, dass beide ESPs im Fall von Michael über USB
mit dem Rechner verbunden wurden. Damit teilen sich beide das gleiche
Potenzial, sofern die am gleichen Hub hängen oder der PC Hersteller faul
war ;)
Hi,
danke, aber wir sind in dieser Problematik da weitgehend
übereinstimmend.
Ich glaube, das die fehlenden HW Timer im ESP viel ausmachen.
Allerdings,.. das Michael in dieser Phase des Aufbaues schon solche
Probleme hat lässt mich vermuten das er das Mitlesen der Daten (Heizung)
vergessen kann. Weil ich hatte Probleme mit zu fahrlässigen Can-Bus
Modulen und Arduino.
Vielleicht auch mal ein Versuch starten, mit einem Arduino
Uno/Mega/Due...u.a.(!!5V) falls die oder einer vorhanden ist. Als
Ersatz, WLan ist noch nicht gefragt oder?
Ansonsten sollte man nach der Stromhalm der Methode gehen. Vielleicht...
Mal eine Frage an Dich, Du arbeitest doch mit den neueren ELV
Ventilsteller. Ermittelst Du die Ventilwerte selbst oder aus anderen
Programmen. Hast Du hier Einblick auf die 868MHz Telegramme, Aufbau usw.
Meine sind schon einige Jahre alt und ich werde sie irgendwann mal
wechseln müssen. Es wird diesbezüglich nichts mehr veröffentlicht noch
glaube ich das die Telegramme identisch sind mit den alten FHT
Telegrammen oder FS20.
Danke
Peter
Hallo Zusammen,
hier ein kurzes Update.
Beide Modulen laufen im Loop-Modus.
Inzwischen habe ich auch die Kommunikation zwischen zwei ESP´s
hinbekommen.
Ich hatte noch ein paar 16MhZ Quarze. Nachdem ich diese auf die Module
gelötet habe und den IRQ deaktivuert habe klappte auch die Kommunikation
zwischen zwei ESP´s bei 10KBs. Was ich aber nicht verstehe, ist der
Loop- Modus. Wenn der Loop-Modus ohne Modifikation funktioniert kan es
nur noch am TJA1050 liegen, den der wird im Loop-Modus nicht benutzt. Da
ich inzwischen fast 10 Module hier liegen habe kann ich einen defekt
ausschliessen.
Eine stabile 5V Verbindung zum TJA1050 besteht.
Was ich auch merkwürdig finde, ist das die Kommunikation nur klappt wenn
ich die Frequenz auf 8Mhz im Code setze. Wenn ich auf 16Mhz stelle
klappt es wieder nicht.
Die beiden ESP´s hängen nicht an einem Hub. Der eine hängt am Desktop PC
und der andere an einem Notebook wo ich mich per RDP verbinde. Das hat
für mich den Vorteil, dass ich bei beiden ESP´s ein logging sehe. Die
offene Masseverbindung stammt aus den Tests.
Ich werde weiter testen und berichten.
Vielen Dank für die Unterstützung.
Hallo,
ich habe weder einen vollständigen Schaltplan von deinem CAN Modul
gefunden noch habe ich ein Wechsel des Quarz je in Betracht gezogen,
weil zu unsicher und wer hat schon die notwendigen Geräte zu Hause. Der
Wechsel des Quarz beinhaltet auch den Wechsel der Kondensatoren, normal.
Es gab mal eine SW, Excelliste oder so, die weiter helfen könnte.
Aber was willst Du damit erreichen 8MHz funktioniert, schreibst Du und
ACAN2515 beinhaltet soweit ich weis diesen Quarz und die Einstellungen
der Register!! Datenblatt(ab S.39.) und 10 Kbit!.. passt. Glaube kaum,
das das die spätere SW stört.
Nimm was funktioniert.
Peter
Peter schrieb:>> Mal eine Frage an Dich, Du arbeitest doch mit den neueren ELV> Ventilsteller. Ermittelst Du die Ventilwerte selbst oder aus anderen> Programmen. Hast Du hier Einblick auf die 868MHz Telegramme, Aufbau usw.> Meine sind schon einige Jahre alt und ich werde sie irgendwann mal> wechseln müssen. Es wird diesbezüglich nichts mehr veröffentlicht noch> glaube ich das die Telegramme identisch sind mit den alten FHT> Telegrammen oder FS20.
Ich habe die hmip-etrv-2 an Raspberrymatic laufen (als Addon in Home
Assistant) und ziehe darüber die Ventilstellung und andere Parameter
über MQTT auf den ESP.
Als OCCU Variante finde ich den Kram richtig gut aber als Cloud-geraffel
überhaupt nicht. Ständig ist der Rotz offline...
@Michael
Retour,
habe ich falsch verstanden. :-(
Nee dat verstehe ich auch nicht mehr... wie geht Das. Die Wert cfg1-3
können doch nicht stimmen!
@ Dave
die alte Variante funktioniert.
Ich beziehe über ein ELV Empfänger alle Ventilwerte fast immer komplett,
von 3 mindestens 1 Sendung. Leider sieht ein Regelverlauf doch etwas
anders aus und die Tage sind gezählt.
Danke Dave
Peter
Hallo,
Michael habe tatsächlich ein NIREN Modul bei mir gefunden.
Habe es an meine BM1 Simulation (10K) angeschlossen mit einem Uno bzw.
MCP_Can Programm betrieben. Kein Problem, funktioniert auch mit Int.
Allerdings mit einer kleinen Änderung in der Lib.
CAN.begin(CAN_10KBPS,MCP_8MHz) bzw. in der mcp_can.h byte begin(byte
speedset, const byte clockset); -->// init can, alt =MCP_16MHz oder
MCP_8Mhz schreiben.
Auch "ohne" Abschluss an beiden Modulen, vielleicht etwas schlechter~.
Nun die Module funktionieren somit auch mit 10k. Werde keine HW_Änderung
vornehmen 3,3V bzw. 5V, aber auf ACAN 2515 wechseln vielleicht morgen.
Nehme an Du hast die VCC_Leistung (3,3V) gekappt auf der Platine!?
Vielleicht liegt es am Programm bzw. auch an einer unnötigen Festlegung.
Peter
Ich habe mit esp und acan2515 mit int null Erfolg im Auto aber an der
bm1 klappt es sowohl mit 8 als auch 16mhz. Mcp_can bereitete mir nur
Probleme aber das hing wohl mit der falschen Plattform zusammen.
Esp32!=Esp32 sag ich nur...
Canbus ist dann wohl doch sehr unterschiedlich obwohl es ja Standards
gibt...
hallo,
der Test vom Interrupt, noch der fehlende Anschlusses war geplant, halt
ein einfaches Prog. Aber durch den Interrupt kannst Du mit Filter
schneller gezielt mit Body_Id auf die Platine im Verbund zugreifen.
Nun mit der ACAN2515_Sw habe ich nie wirklich gearbeitet immer mit
MCP_Can, aber mit ACAN2517 schon und der Interrupt hat mich dabei
überhaupt nicht überzeugt.
Nehme aber an, das Du den ESP int_Unterschied kennst. Das ist wieder so
eine Frickelei, die "~Ankündigung" des Int durch void IRAM_ATTR
RTCISR(); z.B.
Der Standard existiert, er muss nur eingehalten werden, oder würdest Du
mit 6 bis 8KV auf deine Eingänge schießen können. Man sieht kaum
irgendwelchen Schutz und fingert ständig an den Platinen herum ohne
ESDschutz.
Peter
Hallo Peter,
danke für die Tests. Ich werde es ausprobieren.
Leider bin ich zur Zeit etwas frustiert, dass nichts klappt.
Werde mich aber in den nächsten Tagen wieder dransetzten.
Viele Grüße
Michael
Hallo,
leider muss ich den letzten Test verschieben.
Bei mir lässt sich kein ESP32 mehr installieren es fehlen angeblich 2
Datei, die aber vorhanden sind. Scheint bekannt zu sein, ändert sich
aber nichts??
Aber mein Problem hat nichts mit Michaels zu tun.
Da Dave und Crazyhorse langjährige Erfahrung mit dem Aufbau dargelegt
haben bestätigt dies meine Versuche das es funktionieren muss, sowohl
von der Sw
als auch von der HW.
Ich halte allerdings den Treiber TJA1050 für veraltet. Alle Bauteile
sind beständig mit einander, aber das heißt nicht das der
Potenzialunterschied zwischen MCP2515 und TJA sich nicht vereinzelt
bemerkbar macht. Der MCP2562 ist hier besser geeignet, aber ist meine
Meinung.
Genau so würde ich keinen Quarz für diese Aufbau wechseln halte ich auch
für unnötig bei 10K.
Bleibt eine eventuelle Schädigung deiner Module. Es sieht so aus als ob
Du die 5V_Leitung auf der Bottom_seite gelötet hast, warum nicht am IC
direkt ?
Da hast Du mehr Platz.
Peter
So,
erledigt. ESP 32 Neuinstalliert
Wenn ich es richtig eingestellt habe waren es 240Mhz ESP 2core und 10K
Can-Bus.
Funktioniert wie die anderen auch, zu mindestens für den Zeitraum des
Testes.
ok
Zur Info. Die Kabel am Aufbau sind erforderlich weil der Can-Bus über
ICSP (SPI) normal gesteuert wird der ist nicht vorhanden beim ESP.
Inzwischen hat Pierre ACAN2515(17) scheinbar über SW den Pin CS und Int
mit Pullup belegt.
Es sollten somit keine Gründe geben, das Michael nicht bald seine
Heizung mal untersuchen kann.
Frieden!
Peter
Hi,
noch ein kleiner Nachtrag zur SW der ACAN2515
Da die Setting Infos auch beim fehlenden SCLK_Anschlusses des SPI
angezeigt werden ist davon auszugehen, das diese unabhängig von der
Hardware berechnet werden und nicht über die HW ermittelt werden.
Entscheidend ist hier also anscheinend nur der Error Code, leide hier
ohne Text.
Der Interrupt funktioniert auch und die Impulsbreite ist ~ok sie bewegt
sich zwischen 40 und 70µS.(?)
@Michael
Ein Ratschlag von mir.
Alles einfach mal auseinander Ruppen und ein anderes Programme
aufspielen z.B.
WiFiScan oder so.. und danach erneut mit Ruhe und Sorgfalt
aufbauen...ESP !SPI!
Auch hier... ein Gedanke mit Abscheu an den Verbrecher Putin!
Peter
Hallo Zusammen,
es klappt bei mir.
Ich habe mir einen Can-Bus Analyzer von Seed bestellt und diesen an die
Heizung geklemmt und Daten mitgeschnitten.
Dann habe ich diese Daten mit dem Seed Analyzer als Test an den ESP32
mit MCP2515 gesendet. Und was soll ich sagen, es klappt.
Danach habe ich den ESP 32 an die Heizung geklemmt und es geht auch.
Ich kann leider nicht sagen warum es die ganze Zeit nicht geklappt hat.
Ich kann nur vermuten das bei meinen Tests ein Rien Modul defekt ist,
oder das die Kombination von zwei Modulen als Sender und Empfänger nicht
geht.
Ich werde weiter berichten.
Danke an alle die mich Unterstützt haben.
Viele Grüße
Michael
Hallo zusammen,
klinke mich auch mal hier ein, nachdem gestern die Junkers das erste Mal
per MQTT einen "mach aus"-Befehl akzeptiert hat (und evtl. die Uhr
gestellt?!?).
Vorab mal ein fettes Dankeschön an alle, die hier (und an anderer
Stelle) mit daran gearbeitet haben, dass es auch für Hobbyisten wie mich
möglich ist, Zugriff auf die Therme zu bekommen - speziell auch an Dave
G., dessen Beiträge hier (und Doku zu seiner Firmware) mich sehr
ermutigt haben, nochmal in der "Grabbelkiste" zu suchen, was denn nicht
schon alles an verwertbaren Bauteilen da ist...
Junkers-Setup hier:
- ZBS 7-22 MR A 23 (Jahrgang ca. 2003)
- BM2 (!*) (eingebaut statt TA 211 E)
- TA250
Can2Automation
- (No-Name-) ESP32 mit der Firmware von Dave G.
- "NiRen" mit 8.000-er Quartz (via 3.3V-Anschluss vom ESP-Board
versorgt)
Heim-Automatisierung
- FHEM
- Thermostate (Homematic HM-CC-RT-DN und Z-Wave (Spirit Z)) liefern
(gewichtbare) Infos zum aktuellen Öffnungsgrad aus praktisch allen
Räumen.
- Diverse Temperaturen werden bereits auf anderem Weg an FHEM gesendet,
insbes. außen, am Kesselausgang, WW- und Heizung je Vor- und Rücklauf,
alle Wohnräume, etc.
TA250 und BM2* sind erst die Tage (aus der Bucht) eingetroffen, und
gestern abend war dann Gelegenheit, beides mal an die Therme
anzuschließen. Ein passender Stecker für das BM2 lag auch noch rum - und
siehe da, die Therme meckert nicht darüber, dass es keinen Teilnehmer
mit BM1 am Bus gibt, sondern ist mit dem daran angeschlossenen
Außenfühler und dem TA250 bereits rundherum glücklich. Das BM2 gab es -
im Unterschied zu BM1 - in der Bucht zu einem akzeptablen Preis.
"Leider" habe ich erst gekauft und dann in die Doku geschaut, und da
steht, man würde unbedingt ein BM1 benötigen. Optisch kann man
jedenfalls auf den im Web zu findenden Bildern beide aber (bis auf den
Stecker) nicht unterscheiden, v.a. (offene) Lötpunkte für einen
Abschluss-Widerstand habe ich auch nicht gefunden.
Sieht irgendwie so aus, als wäre "alles dasselbe" und würde dann eben
seine Funktionalität schlicht danach annehmen, welchen Widerstandswert
es an AF vorfindet?
Werde das jedenfalls jetzt erst mal ohne den ESP ein paar Tage so vor
sich hintuckern lassen, nicht, dass eines der Junkers-Teile einen Hau
hat oder doch ein BM1 oder ein R à 120 Ohm vermißt wird...
Fragen bis dahin:
- Aus
https://github.com/Neuroquila-n8fall/JunkersControl#automatic-controller-detection
ergibt sich, dass der TA250 "eigentlich" gar nicht zwingend benötigt
wird, sondern eventuell eher "stört" bzw. sinvollerweise nur für den
Notfall bereit gehalten werden müßte. Soweit korrekt?
Davon dürfte nämlich im wesentlichen abhängen, wo das alles seinen Platz
findet. Wenn man den TA250 eigentlich nicht braucht, würde ich den (bzw.
die Konsole davon) nämlich einfach neben der Therme installieren und
überlegen, ob es ggf. sinnvoll ist, noch einen NTC in den "Leitraum" zu
führen...
- Sonst würde ich eben Kabel verlegen, das Teil direkt dort verbauen,
den ESP in eine größere Hohlraumdose hinter den TA250 setzen und aus der
24V-Leitung via DC-DC-Konverter mit versorgen. Unabhängig vom Ort des
Verbaus: Hat das mit der Versorgung schon mal jemand gemacht, oder sind
da Probleme zu erwarten?
- An sich wäre ich gerne "mutig" und direkt "alles" über den ESP in
Richtung Heatronic schicken. In
https://github.com/Neuroquila-n8fall/JunkersControl#external-temperature-sensors
ist zu finden, dass externe Sensoren genutzt werden. Ist das zwingend?
Oder könnte man das (vorläufig) auch über den "parameters"-Topic lösen?
Jedenfalls manche Werte lassen sich doch über diesen Weg einspeisen,
oder?
Gibt es sonst was, was "zwingend" erforderlich ist, damit das läuft?
Bis hierhin erst mal,
Jörg R.
Hallo,
Du kannst über die Servicefunktion, lass mich nicht Lügen ~1.9 das Gerät
grob ermitteln welches angeschlossen, besser erkannt wird. [3]
BM2
Hier ist scheinbar die FD ausschlaggebend, bis ab. Ansonsten habe ich
"oder" gelesen. Wird identisch zu BM1 sein.
Glaube das bei vielen, einschließlich meiner Person, nach dem
anschließen Probleme auftauchten. Evtl. wird der Eingang genauer
vermessen und Bosch unterbindet dann die Kommunikation mit Fremdgeräten.
Die Preise sind teilweise unverschämt, die sind nicht einmal komplett.
TAxxx.
Nun wie ich schon öfters angemerkt habe das TA250...TAxxx ist in der
einfachsten Form ein Bedien- und Informationsteil und weiterführend
benutzt man den CAN-Bus.
Kann mich an keine Telegramme verrinnen die eine besondere Absprache
zwischen BM1 und TA250 beinhalteten. Allerdings waren meine Versuche.
Schreibtisch-versuche ohne Heizung. Der weiterführende Bus ist über RAM,
I2C....Somit es vom Programm abhängig ob alle Daten im RAM hinterlegt
wurden.
Probiere es vor dem Winter aus und Du ja sollst sowieso Gas sparen. :-)
Du kannst den ESP mit der 24v Leitung von der Therme betreiben. Achte
aber drauf, dass der Spannungsregler von der Therme nicht gleichzeitig
TAxxx und ESP in der Bootphase versorgen kann. ESPs (32er) sind leider
sehr hungrig beim Start...
Ansonsten sind die Temperaturfühler, die ich mit eingebaut hatte, nur
dazu da um auf dem Dashboard von HA oder FHEM oder wie auch immer noch
zusätzlich Temperaturen anzuzeigen, die sonst nicht zur Verfügung stehen
würden bzw. nicht in der Granularität. Einfach Ignorieren, falls nicht
benötigt. Allerdings braucht "meine" Steuerung eine Idee was als Vorlauf
eingestellt werden soll und das kommt dann von deinem "Leitsystem" also
FHEM, oder HA oder was auch immer :)
Übrigens hat meine Hauptplatine den Geist aufgegeben. Die sendet nur
noch Müll über den Bus. Oftmals 50 Mal hintereinander die
Vorlauftemperatur. Sie fährt auch nicht mehr runter, weckt sich
selbstständig auf und haut die VLT in den Begrenzer. Ich muss jetzt
erstmal ein neues Board besorgen und jemanden finden, der mir das
verbaut und ggf. anlernt...
Wenn ich überhaupt diesen Winter angesichts der Gaspreise die Heizung
einschalten werde....
Vorab mal Danke für eure Rückmeldungen!
(Irgendwie muss ich mich erst an diese Foren-SW gewöhnen, die macht
gefühlt komische Sachen).
Peter* schrieb:> Probiere es vor dem Winter aus und Du ja sollst sowieso Gas sparen. :-)
Das war der Plan, wobei das Einsparpotential vermutlich nicht mehr soooo
groß ist, wir sind durch andere Maßnahmen schon recht "ok" (und die
letzten 20% und so...).
Dave G. schrieb:> Du kannst den ESP mit der 24v Leitung von der Therme betreiben. Achte> aber drauf, dass der Spannungsregler von der Therme nicht gleichzeitig> TAxxx und ESP in der Bootphase versorgen kann. ESPs (32er) sind leider> sehr hungrig beim Start...
DANEK! Sowas hatte ich schon vermutet...
> Ansonsten sind die Temperaturfühler, die ich mit eingebaut hatte, nur> dazu da um auf dem Dashboard von HA oder FHEM oder wie auch immer noch> zusätzlich Temperaturen anzuzeigen, die sonst nicht zur Verfügung stehen> würden bzw. nicht in der Granularität. Einfach Ignorieren, falls nicht> benötigt.
Wie gesagt: Die Temperaturen an sich sind da, aber dann deaktiviere ich
den 1-wire-Teil erst mal.
> Allerdings braucht "meine" Steuerung eine Idee was als Vorlauf> eingestellt werden soll und das kommt dann von deinem "Leitsystem" also> FHEM, oder HA oder was auch immer :)
Dass das der "kitzelige" Punkt ist, ist soweit klar. Wenn ich es richtig
verstanden habe, hast du auch mehr oder weniger ausschließlich normale
Heizkörper mit elektronischen Thermostaten, die die Ventilstellung
preisgeben, und bei dir ist das "meistgeöffnete" Ventil (neben der
Wunschtemperatur) die eigentliche Stellgröße.
Ich plane im ersten Schritt mal, mit einer Art "gewichteten
Durchschnittsgröße" zu arbeiten, eventuell noch mit der (zu
interpretierenden) Tendenz als Hilfsgröße. In FHEM gibt es dazu "schon
ewig" ein Hilfstool, das dann auch z.B. immer die "letzten 4" ignorieren
kann usw..
> Übrigens hat meine Hauptplatine den Geist aufgegeben. Die sendet nur> noch Müll über den Bus.
Das klingt nicht lustig, hoffe, du bekommst Ersatz und mußt nicht
frieren, falls uns nicht sowieso das Gas abgedreht wird.... (Sorry for
OT).
Jörg R. schrieb:> Werde das jedenfalls jetzt erst mal ohne den ESP ein paar Tage so vor> sich hintuckern lassen, nicht, dass eines der Junkers-Teile einen Hau> hat oder doch ein BM1 oder ein R à 120 Ohm vermißt wird..
So, mal ein aktueller Zwischenstand:
- TA250 und BM2 verstehen sich prächtig, ist jetzt einige Wochen ohne
den ESP ohne "Mucken" gelaufen.
- Die Wiederinbetriebnahme des ESP32-NiRen-Gespannes war dagegen
zunächst recht ernüchternd - ich hatte "ordnungsgemäß" auf 3.3V
umgestellt, was dazu geführt hatte, dass schlicht keine Daten vom Bus
mehr kamen und wohl auch nichts mehr geschrieben wurde... Erst überlegt,
was man alles tun könnte, aber da der ESP ggf. eh' hinüber gewesen wäre,
ging's halt einfach zurück auf 5V und es kamen wieder Daten rein.
Mittelfristig will ich den ESP sowieso gegen ein Modell mit externer
Antenne tauschen (miese WLAN-Verbindung im Keller), stellt sich die
Frage, ob dann ein Spannungsteiler vor MISO Sinnvoll wäre? (Bisher war
die Versorgung noch via Laptop-USB, jetzt hängt ein Steckernetzteil vor
dem ESP und es geht immer noch).
Jetzt Wird erst mal eine Weile mitgelauscht, was da so über den Bus
geht.In dem Zuge werde ich wohl mal versuchen zu verstehen, wie wohl die
Datenpunkte aus den subscriptions zu den übermittelten Daten vom Bus
passen könnten und hau mal eine Weile per MQTT die gemessene Temperatur
aus meinem "Leitraum" auf den Bus (?). Der TA250 darf einstweilen im
Keller bleiben, ich habe aber Zweifel, ob sich der für diese
Temperatur-Info interessiert (falls sie denn überhaupt auf dem Bus
ankommt und nicht nur dem ESP helfen würde; ein TW2 lag hier zwar noch
rum, aber das taugt nicht wirklich als Temperaturfühler für den
TA250)...
Vielleicht noch interessant: auf dem NiRen ist ein R120 verbaut, der per
J1 zugeschaltet werden kann. Aktiviert man den, geht der TA250 auf
Busfehler 2, aktiviert man ihn ohne angeschlossenes TA250, zeigt die
Therme irgendwann einen Busfehler an (bei letzterem Punkt bin ich aber
noch nicht sicher, ob das eine zutreffende Interpretation ist, oder ob
dem ESP Daten/Vorgaben fehlen und der deswegen einfach zu inaktiv ist).
Nachdem die ersten paar tausend Zeilen durch minicom gerauscht waren,
habe ich beschlossen, ein Kabel von der Therme ins Wohnzimmer zu ziehen.
Tendenziell wird wohl erst mal ein Parallelbetrieb stattfinden müssen,
schon alleine deswegen, weil der ESP32 mit JunkersControl bislang
ausschließlich den Heizungssteuerungsteil abdeckt, und der Plan
eigentlich auch gewesen war, die Warmwasserbevorratung zu optimieren
(und z.B. mit PV-Überschussstrom elektrisch zuzuheizen, um Brennerstarts
zu sparen).
Die erste Aktion für die Firmware war daher, die Bauchwassertemperatur
per MQTT zu versenden. Soweit so gut, aber mir kommen nun gewisse
Zweifel, ob ich zur "intended autience"
(https://github.com/Neuroquila-n8fall/JunkersControl#intended-audience)
gehöre... Dass m.E. standardisierte und "essenzielle" Dinge nachzurüsten
sind, entspricht nicht ganz meinen Erwartungen.
Wie dem auch sei, dabei ist mir jedenfalls aufgefallen, dass das
spreadsheet bzgl. 0x253 für meine Hardware nicht ganz paßt:
Dave schrieb:> Um etwas Ordnung in das Konvolut zu bringen habe ich die folgende> Tabelle erstellt, an der sich jeder frei beteiligen kann:> https://docs.google.com/spreadsheets/d/1JzmhEbFY_GSk0Dl_e5pb2zmsy9EPlQU7bUpb9bXKxCM/edit?usp=sharing
Da kam bei mir bisher nur "01", und das dürfte ein boolscher Wert
(an/aus) sein? Bisher ist es mir aber noch nicht gelungen, den TA250
dazu zu bewegen, den auf "0" zu setzen...
Generell wundert es mich, dass das zum einen relativ wenige Adressen
sind, die da aufgeführt werden, und, dass es "nirgendwo" eine
vollständige Liste zu geben scheint (?). Denn eigentlich ist diese
CAN-Variante ja auch "nur" eine ganz bestimmte Option, wie die Daten
physisch übertragen werden, die dann wohl irgendwann mitte der 2000er
durch den "ems-bus" (? oder ebus?) abgelöst worden ist. Die
Adressen/Adressräume scheinen aber im großen und ganzen doch konstant
geblieben zu sein? Das war zumindest mein Eindruck zu dem, was ich mir
im Lauf der Zeit zu diesen Themen so angelesen habe.
Wenn das stimmt, sollten ggf. auch weitere "anfragbare" Adressen in
Projekten wie https://github.com/norberts1/hometop_HT3 und
https://github.com/emsesp/EMS-ESP32 zu finden sein.
bzgl:
Dave G. schrieb:> Allerdings braucht "meine" Steuerung eine Idee was als Vorlauf> eingestellt werden soll und das kommt dann von deinem "Leitsystem" also> FHEM, oder HA oder was auch immer :)
Hast du auf die Schnelle eine Idee, welche Infos der ESP mindestens
braucht, um eine "Idee" zu haben? Reichen Solltemperatur und ein
Ventil-Öffnungswert?
Denn vor diesem Hintergrund
> Du kannst den ESP mit der 24v Leitung von der Therme betreiben. Achte> aber drauf, dass der Spannungsregler von der Therme nicht gleichzeitig> TAxxx und ESP in der Bootphase versorgen kann.
muss ich entscheiden, ob ich doch relativ schnell den Versuch
unternehme, den TA250 zu deaktivieren und nur via
(weiterzuentwickelndem) ESP zu steuern, oder ob das parallel laufen
muss.
Wenn parallel, stellt sich die Frage nach der optimalen Verbindung - der
ESP braucht dann eine externe Versorgung, und das mit der gemeinsamen
Masse wird dann schwierig (oder übersehe ich da was?!?).
*@all*: Was mich interessieren würde: lest ihr nur mit, was da so auf
dem Bus abgeht, oder greift ihr aktiv in die Steuerung ein? Wie verträgt
sich das mit der TA250 (oä)? Oder werden die Werte in den Speicher der
TA250 übernommen, wenn "jemand" was auf den Bus schreibt? Braucht es
dazu die "richtige" Adresse, oder ist das einfach die, unter der die
selbst die Telegramme abschickt?
Sorry, bestimmt hat das schon irgendjemand irgendwo geschrieben, und ich
habe es nur nicht gefunden...?
Hallo,
schönes Projekt hatte die gleichen Gedanken für die Zukunft.
Pufferspeicher mit elektrischer Heizung bzw. Warmwasserheizstab durch
PV-Anlage, aber etwas verschoben ins nächste Jahr da momentan die Preise
explodieren.
Nun eine öffentliche Junkers oder Bosch-Liste mit sämtlichen verfügbaren
Adressen wird es ganz sicher nicht geben. Ob die bekannten Adressen
evtl. mehrfach vergeben wurden ist aber auch nicht auszuschließen. Der
Aufbau der Heizung ist hier entscheidend. Hast Du einen Mischer werden
hier weitere Adressen freigeschaltet.
HT3 ist eine ganz andere Generation von Heizung.
Scan dein Can-Bus auf vorhandene Adressen und rufe die einzelnen
möglichen Befehle auf bzw. schau im Service_Handbuch für Fachleute oder
Servicefunktionen-Kompass nach, was an Planung noch möglich war. Dadurch
hast Du noch ein Überblick über die Heizung.
"Leitsystem", hatte das so verstanden das der Außenfühler nach wie vor
seine Arbeit erledigt und somit gar nicht die Frage gestellt wird, wo
fange ich an. Sondern nur die Optimierung durch die Ventilstellung
[Last] erbracht wird.
Achtung!
Bei mir ist es so, dass jeder Raum seine Temperatur einhält, aber die
Heizung (22kw-->~10kW) taktet mir zu schnell, deshalb auch der
Pufferspeicher in der Zukunft, ein muss.
Nun dein Problem mit der Versorgung, --> ein Steckernetzteil GND
verbinden. Can.-Bus immer 3adrig.
Ja, die Schreibtischtests habe ich hier auch veröffentlicht ohne
Heizung.
Du schreibst die gleichen Telegramme[ID's] wie auch der TAxxx, aber der
Ta schreibt seine auch, aber in einem längerem Zyklus.
Ja, nicht optimal.
Bin aber überzeugt das wenige Telegramme über CAN-Bus ausreichen um den
TA zu ersetzen. Ich kann mich aber nicht daran erinnern das ein
Telegramm vom TA übernommen wurde. Bei mir war aber ein defekt vom BM1
nicht auszuschließen und habe vor kurzem erst ein TA270 komplett
bekommen.
Peter* schrieb:> Hallo,>> schönes Projekt hatte die gleichen Gedanken für die Zukunft.> Pufferspeicher mit elektrischer Heizung bzw. Warmwasserheizstab durch> PV-Anlage, aber etwas verschoben ins nächste Jahr da momentan die Preise> explodieren.
Na ja, ich habe eher begrenzte PV-Kapazität und dachte vorrangig daran,
den (eher kleinen) Brauchwasserspeicher ggf. tagsüber so nachzuheizen,
dass laufende Verluste über die Zirkulation oder kleine Entnahmen
kompensiert werden. Für einen "großen" Puffer, der den Namen verdient,
ist eigentlich kein Platz da...
> Nun eine öffentliche Junkers oder Bosch-Liste mit sämtlichen verfügbaren> Adressen wird es ganz sicher nicht geben. Ob die bekannten Adressen> evtl. mehrfach vergeben wurden ist aber auch nicht auszuschließen. Der> Aufbau der Heizung ist hier entscheidend. Hast Du einen Mischer werden> hier weitere Adressen freigeschaltet.
Soweit so klar. Wenn ich den Code aus EMS-ESP32 richtig interpretiere,
ist es aber schon so, dass die Adressen (mehr oder weniger allgemein)
bekannt sind und nur von "Generation zu Generation" ggf. einem Wandel
unterworfen sind.
> HT3 ist eine ganz andere Generation von Heizung.
Jein. In der Vergangenheit bin ich auch mehrfach durcheinandergekommen,
weil in meinem Handbuch explizit steht, dass die Heizung eine "Heatronic
3" hätte. Man kann jetzt darüber streiten, was das genau bedeuten soll,
eine Bus-Schnittstelle hatte ich jedenfalls vor dem Einbau des BM2 nicht
gefunden...
Irgendwo hier in diesem Forum gab es auch ein paar "Aha"-Beiträge in
manchen Threads zum Thema, welche Codeteile bei der Auswertung der
Telegramme diverser Bus-Varianten diverser Hersteller
überraschenderweise doch irgendwie kompatibel zu sein scheinen.
Letztlich ist das aber egal, ich will ja nur eine funktionierende
Variante haben und eine gewisse Sicherheit, dass ich in 3 Jahren wieder
Ersatz hinbekomme, falls der ESP aussteigt oder ich mal das
WLAN-Kennwort ändern muss...
> Scan dein Can-Bus auf vorhandene Adressen und rufe die einzelnen> möglichen Befehle auf bzw. schau im Service_Handbuch für Fachleute oder> Servicefunktionen-Kompass nach, was an Planung noch möglich war. Dadurch> hast Du noch ein Überblick über die Heizung.
Der EMS-ESP32-Code scheint genau das zu machen und erst mal
nachzuschauen, welche ihm bekannten Baugruppen da sind. Mir ist das im
Prinzip egal, weil ich nur "den Ofen" steuern will, wofür die paar
bekannten Adressen ja reichen (wie Dave G. gezeigt hat).
Was ich ggf. sonst noch brauche (z.B. die Zuheizung am Puffer), läuft
sowieso extern, es muss nur sichergestellt sein, dass sich das nicht in
die Quere kommt....
> "Leitsystem", hatte das so verstanden das der Außenfühler nach wie vor> seine Arbeit erledigt und somit gar nicht die Frage gestellt wird, wo> fange ich an. Sondern nur die Optimierung durch die Ventilstellung> [Last] erbracht wird.
Jein. Wenn ich das richtig verstanden habe, gibt der ESP die
Vorlauftemperatur vor, und berücksichtigt dabei neben der
Außentemperatur (die er ggf. vom BM1/2 bekommt) nur noch die
Ventilöffnung als (alleinigen?) Indikator für die Wärmeanforderung. Da
die Pumpe nur 3 hart einzustellende Stufen kennt, ist die einzige
Variable auf der Seite des Ofens dann die Brennerleistung, und es ist
dann bestenfalls möglich, die schneller nach unten zu nehmen, als der
Ofen das autonom täte. Oder eben erst etwas länger zu warten, bis wieder
eingeschaltet wird (und ggf. länger umwälzen, um die im Wasser
vorhandene Restwärme (ohne zusätzlichen Puffer) besser zu verteilen?).
> Nun dein Problem mit der Versorgung, --> ein Steckernetzteil GND> verbinden. Can.-Bus immer 3adrig.
Bisher ging das mit dem Lesen auch mit nur 2 Adern, der ESP hing am
Laptop, und da war es mir zu "heiß" auszutesten, wo ggf.
Potentialunterschiede landen...
> Bin aber überzeugt das wenige Telegramme über CAN-Bus ausreichen um den> TA zu ersetzen.
Werde jetzt aber doch vermutlich versuchen, die ESP-only-Variante zum
Laufen zu bringen, nachdem das mit den doppelt genutzten Adressen klar
ist. Dann hängt der ESP eh' auf der 24V-Leitung der Therme und GND ist
gemeinsam.
Beides kommt dann ins Wohnzimmer, der ESP hinter den TA250, und dazu
einen Umschalter, der "entweder oder" mit der Versorgungsspannung
verbindet. Dann bekommt der ESP mal ein paar Daten und darf lostuckern,
und das mit der Wasserbereitungssteuerung kann eigentlich auch nicht
allzu schwer sein...
Peter* schrieb:> Nun,>> dann sind ja alle Zweifel von Dir beantwortet.>> viel Erfolg.
Du bist lustig... Ist eher erst mal ein Startpunkt, lach.
Hier wäre die nächste - zum Code:
In SetFeedTemperature() in can_processor.cpp wird eine can-Message
vorbereitet, ein abschließendes "can.tryToSend(msg);" fehlt aber. Soll
das so?
Überhaupt: Wenn die Initialisierung des Can-Moduls via SPI fehlschlägt,
bekommt man zwar direkt nach dem Start sehr schnell einen Satz Infos
dazu, aber an der Konsole sieht es später so aus, als würde brav
gesendet. Ist natürlich kein Problem, wenn die Verbindung ok ist, lenkt
aber beim debuggen ab, wenn man in das Thema einsteigt...
Die Nachricht wird vorbereitet und dann in der Schrittkette gesendet um
nicht den Bus zu fluten.
Wir können gerne mal ne Telco machen und die ganzen offenen Fragen
klären.
Danke sowohl für die Klarstellung wie auch das Angebot!
Das mit der Telco wäre super, vielleicht am WE?
Ansonsten habe ich vor einigen Minuten mal im laufenden Betrieb den
TA250 abgeklemmt - die Therme läuft ohne "A8"-Meldung weiter. Schreiben
auf den Bus (nur 2 Adern angeschlossen, J1 am NiRen offen) klappt
demnach auch freu
(wenn ich jetzt wüßte, ob die Therme so Warmwasser bereitstellt, würde
ich das glatt erst mal so weiterlaufen lassen, aber jetzt darf der TA250
wieder).
Der hat übrigens die Taktung schon positiv beeinflusst: "Früher" heizte
die Therme alle Stunde einmal hoch - warum auch immer (DS18B20-Messung).
Jetzt nur noch ca. alle 3h.
Sehr gut. Die Therme wird sich niemals beschweren, solange im
regelmäßigen Abstand bestimmte Nachrichten ausgetauscht werden. Sie wird
erst zickig, wenn für einen gewissen Zeitraum zum Beispiel keine Daten
angefordert wurden.
Es gibt auch Nachrichten, die die Warmwassertemperatur setzen. Das
können wir gerne dann gemeinsam mal durchgehen. Ich denke da kommen auch
noch interessante Infos bei raus die dem Projekt helfen ;)
Ich bin grundsätzlich zeitlich sehr flexibel und bevorzuge Discord, bin
da aber auch flexibel.
Meine ID: Dave aka FntX#5439
Habe dann doch das Risiko in Kauf genommen, dass heute morgen vielleicht
kein WW bereitgestellt ist (und dann eben sehr kurz geduscht...): Das
Ding lief stressfrei durch ohne TA250, und bis der Rest auf den Beinen
war, war wohl auch wieder Wasser verfügbar (zumindest keine Klagen
bisher).
Dave G. schrieb:> Es gibt auch Nachrichten, die die Warmwassertemperatur setzen. Das> können wir gerne dann gemeinsam mal durchgehen.
Die Nachrichtentype(n) für's Lesen und Setzen sind in der Liste drin,
lesend wird der Wert auch schon per MQTT an FHEM versandt.
Soweit ich das überflogen habe, gibt es auch hart vercodete Zeiten auf
dem ESP, mir hatte nur die Zeit nicht gereicht, auch die subscription
noch zu ergänzen, um das von FHEM aus zu machen und auch nicht klar,
inwieweit sich das ggf. mit dem Zeitplan beißt. War vermutlich ganz gut,
denn wenn die Logik ähnlich ist wie beim soll-Wert für die
Vorlauftemperatur, wird das ja nur einfach zwischengespeichert und dann
einfach im Rahmen des "Stufenplans" abgearbeitet (?).
> Ich denke da kommen auch> noch interessante Infos bei raus die dem Projekt helfen ;)
An grundlegende neue Infos glaube ich grade nicht recht, es wird
bestenfalls eben "noch einer", der Erfahrung mit dieser Art der
Steuerung beitragen kann. Aber es reicht ja, wenn wir ggf. das ganze
soweit bringen können, dass jemand einfach ein binary runterlädt, das
flasht und dann nur seine WiFi-Daten und MQTT-Spezifika eintragen
muss...
Und vielleicht findet sich dann auch jemand, der einen Webserver
integrieren will, mit dem man das Ding autonom als verbesserten
TA250+-Klon betreiben kann, ganz ohne Heimautomatisierungslösung
dahinter ("morgen ist Feiertag", oder Ferienmodus etc.). (Das ist nicht
meine persönliche Zielrichtung oder Kompetenz).
> Ich bin grundsätzlich zeitlich sehr flexibel und bevorzuge Discord, bin> da aber auch flexibel.> Meine ID: Dave aka FntX#5439
Ja nun, bisher habe ich nicht mal einen Account da. Braucht man wohl,
heutzutage, oder?
Jörg R. schrieb:> Ja nun, bisher habe ich nicht mal einen Account da. Braucht man wohl,> heutzutage, oder?
...ja..leider...wie überall wo es kein Geld kostet :(
So, meine Schnittstelle ist soweit jedenfalls hardwaremäßig fertig, Bild
anbei. Per Steckpfostenleiste kann man umstellen zwischen TA-Betrieb +
Sniffen (nur die beiden CAN-Adern gehen an die Schnittstelle), oder
ESP-only-Betrieb, bei dem dann der TA komplett weg ist und der ESP etc.
über einen Step-Down versorgt wird. Das ganze kann dann mittelfristig im
Regal hinter die Kulissen, und wenn es Probleme gäbe, kann man ohne
große Probleme umjumpern.
Jetzt geht's dann erst mal wieder an die Software-Seite, der Betrieb mit
einem WW-Speicher war in der firmware bisher nicht vorgesehen. Da müssen
wir also nochmal etwas rumtüfteln, das dürfte etwas dauern.
Hallo,
naja, wenn es funktioniert!
Solltest Du "längere Wege" zur Therme haben!
Das Can-Bus Kabel wird (ist) grundsätzlich verdrillt, auch bei 10k, wenn
Du schon kein Potenzialausgleich mit verlegen willst.
Eine weitere mögliche Fehlerquelle.
Bis dato funktioniert es, ja.
Das Haupt-Kabel ist <10m und in der Tat verdrillt, wenn auch nicht so
extrem wie bei Ethernet-Verlegekabeln üblich. Nur zwei Adern sind nur
dann verbunden, wenn der ESP im Sniffer-Betrieb läuft, was die Ausnahme
sein sollte. (Nur) dann gibt es eine Verbindung zu dem kurzen 4-Adrigen
(unverdrillt, ja...), das zum TA250 weitergeht.
PS: Während der ersten Tests waren die Kabel nur 4-Adrig, nicht
verdrillt und deutlich länger - wobei der nach dem TA250 (Busende?)
angeschlossene ESP auch da die ganzen Tests über nur mit 2 Adern am Bus
war... Sicher nicht automotive-konform, aber ich will ja auch keine
Zertifizierung dafür beantragen.
Hallo zusammen.
Ich wollte mich auch mal wieder zu Wort melden.
Mittlerweile habe ich mir ein RaspberryPI zugelegt und lasse dort den
HomeAssistant laufen. Da ich diesen aufgrund der Räumlichen Anordnung
leider nicht an mein CANUSB-Interface anschließen kann, habe ich bis
dato eine andere Variante etabliert.
Ich habe eine kleine Windows-Maschine, an der das CANUSB-Interface
angeschlossen ist. Dort logge ich den CAN-BUS-Stream mit der Software
CAN-Hacker und speichere diesen Log alle fünf Minuten in eine Textdatei.
Über meinen Homeserver (eine Synology DS) führt ein cronjob ebenfalls
alle fünf Minuten ein PHP-Script aus, das die Daten aus dem Log in eine
SQL-Datenbank und an meinen Mosquitto-Broker im HomeAssistant.
Das funktioniert zwar ganz gut, aber der Delay, der durch das
Zwischenspeichern entsteht, geht mir etwas auf den Keks.
Auf der Suche nach einer Lösung, den CANBUS-Datenstrom in Echtzeit an
meinen Mosquitto-Broker zu senden, bin ich auf
"c3re/can2mqtt"(https://github.com/c3re/can2mqtt) gestoßen.
Hat jemand Erfahrung mit diesem Paket (oder vielleicht etwas anderem,
das den gleichen Zweck erfüllt und unter Windows läuft) und mag mir bei
der Umsetzung etwas Hilfestellung geben?
Liebe Grüße,
Bernd
Damit hatte ich vor einiger Zeit auch geliebäugelt aber im Rahmen von
einem Projekt am Auto aber habe es dann als zu kompliziert verworfen.
Ich muss jetzt daher eine ketzerische Frage stellen und zwar warum du
einen "Fat Client" für das Lesen und Übermitteln der Daten verwendest.
Ich habe bereits eine fertige Lösung zum Loggen und Setzen von
Parametern der Heizung, die genau das macht. Allerdings läuft das Ganze
auf einem ESP32 mit einem CAN-Modul.
Kontext: Beitrag "Re: Junkers CAN-Bus Protokoll"
Ich kann dir gerne zeigen wie das funktioniert, was du brauchst und
sogar wie du danach deine Heizung mit HomeAssistant lenken kannst. Alles
in allem eine Sache von wenigen Minuten - und das dank dem Input und
Denkanstößen von Jörg auch ganz ohne Codeanpassungen.
Dave G. schrieb:> warum du> einen "Fat Client" für das Lesen und Übermitteln der Daten verwendest
Nun, ich will schlicht und ergreifend keine neue Hardware kaufen.
Der "Fat Client" ist ein Z83-II Mini-PC, der mit meinem vorhandenem
LAWICEL-CANUSB alle notwendigen Schnittstellen mitbringt.
Bernd R. schrieb:> Nun, ich will schlicht und ergreifend keine neue Hardware kaufen.
Na ja, einerseits verständlich, andererseits ist der Invest jetzt nicht
umwerfend. Ein USB-Netzteil vorausgesetzt sind das um die 10 Euro, die
die Bauteile in Fernost kosten...
@Peter: Du hattest doch mal versucht den I2C auseinander zu nehmen. Hast
du die Pinbelegung? Ich würde wegen anhaltender Frustration wegen nicht
sauber funktionierenden CAN-Modulen gerne eine Ebene tiefer gehen mit
dem Projekt und mich einfach mal dranheften und mitlesen während alles
an der Therme hängt und in Betrieb ist.
Hallo Dave,
ja, hatte ich über das Speicher IC PCF8570 versucht. Allerdings im
Schreibtischtest, "ohne" Heizung selbst.
Einige Daten konnte ich wiedersehen, aber nicht an einer Adresse
festmachen.
Der I2c Bus ist nur an den Steckern zur Hauptplatine vorhanden. Weißer
Stecker zu schwarzem Kabel. Pin Belegung, leider bei mir nicht mehr
aufgebaut.(!)
BM1 -Stecker
Pin1 VCC, Pin2 NC, Pin3 GND, Pin4 "5Volt", Pin5 "SDA", Pin6 "SCL"
Kontrolliere bitte die letzten drei Pin's und denke an die Pindrehung an
der Hauptplatine Pin1 wird zu Pin6 usw. Da ist der Abgriff möglich.
Der Can ist sicherer als der I2C, lesen ja, aber.... (!)
Besten Dank, Peter. Ich werde mal was basteln und einfach scannen und
sniffen und das mit den Werten vom Can vergleichen.
Habe mittlerweile das Board getauscht und alles läuft wieder super.
Jetzt bin ich mal mutig und hefte mich direkt im laufenden Betrieb an
den I2c.
Bei vielen Can-Modulen gibt es gerade das Problem, dass das Senden nicht
funktioniert. Ich habe nur ein Modul mit 16Mhz wo es wunderbar klappt.
Selbst die selbstgebauten Varianten empfangen nur aber senden nicht.
Meiner Meinung nach ist das alles zu unsicher und wenig reproduzierbar
oder es ist einfach nur Pech.
Also es funktioniert zwar aber irgendwie nicht, wenn die Planeten gerade
ungünstig stehen oder sowas....
Jetzt ist es glaube ich an der Zeit die letzte Quelle der Unsicherheit
zu entfernen und direkt ans Board zu gehen.
@Bernd:
Mit etwas Geduld gibt's bald fertige Boards, wo man einfach einen esp
aufsteckt und das einfach nur an die Therme pappt. Momentan ist das aber
mit dem can interface so eine Unschärfe...
Bernd Rehlinger schrieb:> @Jörg:> Jetzt bin ich doch etwas neugierig geworden...
Na ja, wenn du Glück hast, brauchst du nur ein "NiRen"
Arduino-CAN-Modul, einen ESP32 und ein paar Kabel und Widerstände.
So war es bei mir. Ich hatte noch zwei NiRen aus Altbeständen rumliegen
und
habe die einfach direkt an den ESP32 gehängt. Mit ein paar kleineren
Änderungen am Code von Dave G. war die Verbindung da.
So kann es laufen, wenn es gut läuft....
Ich habe dann ein paar Fehler gemacht, angefangen damit, alles 1:1 auf
eine Platine zu verdrahten und einen Spannungswandler davor zu hängen,
der aus den 24V die (knapp unter) 5V gemacht hat, die für den Betrieb
erforderlich sind. Das klappte dann auch soweit.
Dann bin ich auf den "development"-Zweig von Dave's Code gegangen, habe
aber nicht beachtet, dass die PIN-Belegung etwas anders ist als in
meinem geänderten Code => keine Verbindung. Was ich bis dato nicht
wußte: Bei fehlender Verbindung setzt die Therme die Spannung hoch
(32V). Daraus hat dann der verbaute DC-DC-Konverter etwas mehr gemacht
als nur 5V, was für die beiden NiRen-Module nicht gut war.
Habe dann Ersatz in Fernost bestellt und auch ein Modul in D. Damit war
dann aber (im Unterschied zu den teilzerstörten NiRen) keine Verbindung
über SPI möglich, so dass ich grade darauf warte, funktionierende Module
zu bekommen.
Ich hatte aber scheinbar sehr viel Glück, gleich zwei unmittelbar
funktionierende Module in der Hand zu haben: die Erfahrungen scheinen
insgesamt eher gemischt zu sein, und es ist überhauot nicht transparent,
warum manche Module funktionieren und andere nicht, obwohl eigentlich
"nichts" auf diesen Modulen verbaut ist....
Wir hatten auch schon überlegt, eine eigene Platine zu designen, aber
die bei Dave G. vorhandenen "alten" Versuche funktionieren aus
unerfindlichen Gründen leider auch nicht zufriedenstellend.
Falls du jetzt also einsteigen wolltest, benötigst du die o.g. Bauteile
und kannst versuchen, ob das klappt!
Wegen des I2C-Ansatzes: Wenn meine bescheidenen Kenntnisse mich nicht
täuschen, ist das doch eine Master-Slave-Geschichte, bei der auch wieder
alle TN am selben Bus hängen? Welcher TN ist denn dann der Master? Die
Therme oder das BM1/2?
Würde auf die Therme tippen. Dann sollte es doch möglich sein
rauszufinden, was für Anfragen über I2C kommen und wie die beantwortet
werden. Wir düften doch noch eine zweite Schnittstelle am Board haben,
über die man das rausbekommen könnte: Die "doofe Uhr" (in der Regel
rechts vom BMx verbaut und bei BM1-Nutzung abzustöpseln) kommuniziert
doch auch irgendwie mit dem Mainboard...
Oder ist das zu einfach gedacht?
Jörg R. schrieb:> [...] ist das doch eine Master-Slave-Geschichte, bei der auch wieder> alle TN am selben Bus hängen? Welcher TN ist denn dann der Master? Die> Therme oder das BM1/2?
Genau und wenn Junkers sich an die Architektur gehalten hat, dann ist
die Therme der Master. "Plug-In" Module sollten immer Slaves sein.
> [...] Die "doofe Uhr" (in der Regel> rechts vom BMx verbaut und bei BM1-Nutzung abzustöpseln) kommuniziert> doch auch irgendwie mit dem Mainboard...
Das denke ich auch ... Ich tippe mal auf papierraschel I2C! :)
Übrigens verstehe ich das nicht mit dem Uhr abstöpseln. In der Anleitung
steht man solle das Textdisplay entfernen, das BM1 einbauen und das
Textdisplay dann wieder einbauen. Wie soll man auch ansonsten die
Parameter der Heizung einstellen. Das geht nämlich nicht über die TA.
@Bernd: Bevor du dir auch noch den Frust daran holst, versuchen wir doch
besser eine Lösung zu bauen, die mit wenig Aufwand überall funktioniert.
Ich denke wir sind der Lösung sehr, sehr nahe. Irgend ein dummer Fehler
muss es sein, der uns den Erfolg verwehrt.
Ich habe noch einen Test im Raum stehen aber je länger ich über der
Sache sitze, desto mehr habe ich Lust den blöden CAN-Bus zu umgehen,
zumal das BM1/2 ja auch wieder ein Fehlerfaktor ist. Ein kostspieliger
dazu. Die niedrige Übertragungsrate macht die Sache nicht einfacher.
Hallo,
@Bernd lass Dich nicht abschrecken, die meisten Fehler sind
eigenproduziert...
Aber.. was nimmt dein Mini Pc auf. Habe in der Nacht fast 100W momentan
an Kleinkram und das stört mich schon gewaltig.
Ein paar Info's noch zum I2C, hatte ~30KHz festgestellt:
TWBR =65; // 0 TWBR Bitrate Teiler 65
TWSR|=bit(TWPS0); // 0 Prescaler TWSS0 gesetz 4
Das RAM hat eine Adresse von 0x50, bin gespannt ob sich dann der BM1
nochmals meldet mit einer anderen Adresse.
Eine Anregung: Vielleicht den Can Bus parallel zum I2C scannen.
Peter* schrieb:> @Bernd lass Dich nicht abschrecken, die meisten Fehler sind> eigenproduziert..
...sehe ich ähnlich - in beiden Aspekten!
Dave G. schrieb:> Übrigens verstehe ich das nicht mit dem Uhr abstöpseln. In der Anleitung> steht man solle das Textdisplay entfernen, das BM1 einbauen und das> Textdisplay dann wieder einbauen. Wie soll man auch ansonsten die> Parameter der Heizung einstellen. Das geht nämlich nicht über die TA.
Das verstehe nun ich wieder nicht. In meinen Unterlagen wird das Bauteil
"422" als "Digitaluhr" bezeichnet, und soweit ich mich entsinne, kann
man darüber nur Wochenprogramme einstellen für WW-Bereitung und Heizen,
also genau das, was die TA250 auch kann.
"Abklemmen" nur für die Montage? Das wäre dann nur eine Vorsorgemaßnahme
für elektrostatische Effekte, oder? Macht für mich eher Sinn in der
Interpretation: Man braucht keine Digitaluhr (in der TA-Anleitung
"Textdisplay" genannt) mehr...
Bisher hat sich meine Therme auch nicht beschwert (im reinen
TA-Betrieb), dass ihr irgendwelche Parameter fehlen würden.
PS: Habe mir die ausgebaute TA 211 E mal angesehen, über die vorher die
Parameter zur Heizkurve eingestellt wurden. Da sind 2 von den 6 PINs
ohne Widerstand zum Stecker 1-3-4-A-F, (die PINs 2 und 3, wenn man von
der Seite ohne die Verpolungssicherungsnippel her zählt). Die 24V werden
also erwartungsgemäß nur durchgeschleift, der Rest scheint mit Bauteilen
auf der TA 211 E verbunden zu sein.
Hallo,
meine Heizung hat kein "Textdisplay", also eine ältere Version, hierbei
stellst Du mit den beiden "Poti's" (Heizung & Warmwasser) und den
Bedientasten einige Grundparameter ein.
Die Uhr ist soweit ich festgestellt habe kein I2C sondern hat zwei
Ports, sie werden nur abgefragt. Wird der CAN-Bus installiert muss sie
entfernt werden. Hier existiert eine Gerätekodierung, wahrscheinlich
durch die 5Volt auf Pin4.
Hast ein Textdisplay ist das alles etwas einfach
Kundenfreundlicher.(Vermutung)
Nun TA211 hat die Parameter die Du nur brauchst. Genau so ist der Ta250
und TA xx ein Bedienteil, wie die Uhr.
Meine Heizung hat eine I2C Schnittstelle nur den Stecker bekommst Du
nicht.
TA211: wenn ich mich recht erinnere werden hier die beiden i2C Pinne
benutzt um die sequentielle Übertragung der U/F Umsetzung der 8Kanäle zu
realisieren.
Peter* schrieb:> stellst Du mit den beiden "Poti's" (Heizung & Warmwasser) und den> Bedientasten einige Grundparameter ein.
Die großen Potis sind wohl bei allen Geräten dieser Klasse da. Fragt
sich nur, wie die sich auswirken, wenn die Vorgaben digital kommen (also
erst mal über CAN/TA250/TA270). Dann scheint es eher sowas wie eine Art
Notfallvorgabe zu sein, wobei es wohl dann auch noch einen Unterschied
macht, ob man für WW ein Durchlauferhitzersystem hat oder einen
Vorratsbehälter.
> Die Uhr ist soweit ich festgestellt habe kein I2C sondern hat zwei> Ports, sie werden nur abgefragt.
Das klingt auch plausibel, zumal die intern nur Zeitpunkte für "CH1" und
"CH2" kennt...
> Wird der CAN-Bus installiert muss sie entfernt werden.
Für mich klingt auch das logisch. Sicherheitshalber für unsere
Skeptiker: gibt es dafür eine "offizielle" Quelle/Doku?
Wenn es wirklich nur 2x an/aus ist, stellt sich die Frage, warum man
überhaupt eine Uhrzeit auf den Bus schreiben sollte, wie es die TA250
scheinbar hin und wieder macht. (Na ja, es mag durchaus denkbar sein,
dass sich doch in bestimmten Konfigurationen irgendein Bauteil für eine
aktuelle Uhrzeit interessiert).
> Hier existiert eine Gerätekodierung, wahrscheinlich> durch die 5Volt auf Pin4.
Klingt nach einem wichtigen Punkt.
> Hast ein Textdisplay ist das alles etwas einfach> Kundenfreundlicher.(Vermutung)
Na ja, ich fand das Ding immer schon hoffnungslos antiquiert (und dazu
noch ärgerlich ungenau), aber ja, es ist komfortabler wie Drehknöpfe
oder was analoges... Im Prinzip ist es genauso "komfortabel" wie die
Eingabe der Schaltzeitpunkte im TA250, nur dass man bei der nicht auch
noch im kalten Keller davor in die Hocke gehen muss...
> Nun TA211 hat die Parameter die Du nur brauchst. Genau so ist der Ta250> und TA xx ein Bedienteil, wie die Uhr.
Der TA211 hat (v.a. iVm. einem TW2) wohl hinsichtlich des Heizungsteils
dieselben Infos für die Therme zu bieten wie der TA250 (+BMx für die
Außentemperatur), und er scheint auch einen der beiden Kanäle des
"Textdisplays" abzugreifen (jedenfalls bei mittlerer Stellung des
Drehknopfs für den Heizungsmodus).
> Meine Heizung hat eine I2C Schnittstelle nur den Stecker bekommst Du> nicht.
Na ja, eine extra Schnittstelle mit eigenem Stecker wäre zwar
wünschenswert, aber wenn wir sowieso simulieren müssen, dass ein BMx
angestöpselt ist, muss man eh an diese Schnittstelle ran, und da hat man
ja ein Kabel, das man aus dem TA 211 E wegstöpseln kann. Beide Enden
sind im wesentlichen gleich gestaltet und dafür gedacht, sie über ein
etwas dickeres PCB zu schieben. Abgesehen vom fehlenden Verpolungsschutz
(wünschenswert, ja), kommt man so zumindest an die Schnittstelle ran,
ohne an den Kabeln direkt rumzuschnitzen.
> TA211: wenn ich mich recht erinnere werden hier die beiden i2C Pinne> benutzt um die sequentielle Übertragung der U/F Umsetzung der 8Kanäle zu> realisieren.
Über diesen Satz muss ich vermutlich noch eine Weile nachdenken, bis mir
klar ist, was mit "U/F Umsetzung der 8Kanäle" genau gemeint sein könnte.
Hallo,
Jörg R. schrieb:> Über diesen Satz muss ich vermutlich noch eine Weile nachdenken, bis mir> klar ist, was mit "U/F Umsetzung der 8Kanäle" genau gemeint sein könnte.
Nun, ein Spannungsfrequenz/ Frequenz_umsetzer (U/F) mit 8 Kanal wird
Serial über eine Leitung versendet. Die einzelne Frequenz entspricht der
Einstellung an den einzeln Messpunkten:
char* Messpunkt[]={" 01 UB-5V [ V]:",
" 02 Grenztemperatur [°C]:",
" 03 Fußpunkt [°C]:",
" 04 Absenkung N [°C]:",
" 05 Punkt 4 [ x]:",
" 06 Fernbedienung [°C]:",
" 07 Betriebsarten [Sw]:",
" 08 Außentemperatur [°C]:"};
"!schon etwas älter"
i2C Schnittstelle: Sehe hier evtl. zwei verschiedene Ausgänge der I2C
Schnittstelle, evtl. intern bzw. extern, auch zweckentfremdet (TA211).
Müsste untersucht werden.
Eine Frage zur Therme selbst, vielleicht habt ihr einen Tipp. Ich
beobachte seit ein paar Wochen folgendes:
Die Solltemperatur der Therme wird nicht immer auf Anhieb sauber
eingeregelt, sondern die Therme tacket einige Male bis sie sich fängt
und dann die Temp sauber hält.
Habt ihr eine Idee was da sein könnte?
Dave G. schrieb:> (ahhh... Ich glaube hier muss man grundsätzlich zwischen Zeitschaltuhr> und Textdisplay unterscheiden, dann macht das auf einmal auch Sinn 😉)
Weiß nicht recht. In dem Handbuch zur Therme ist das Bauteil "422" eben
als "Digitaluhr" bezeichnet, die Abbildung ist aber 1:1 die, die in der
Einbauanleitung zum BM2 als "Textdisplay" bezeichnet wird. Hätte daraus
geschlossen, dass es keinen Unterschied gibt, v.a. dann nicht, wenn die
Schnittstelle keine "Datenschnittstelle" ist, sondern nur an/aus auf 2
Kanälen hinten rauskommt...
Peter* schrieb:> Nun, ein Spannungsfrequenz/ Frequenz_umsetzer (U/F) mit 8 Kanal wird> Serial über eine Leitung versendet. Die einzelne Frequenz entspricht der> Einstellung an den einzeln Messpunkten:> [...]> "!schon etwas älter"
Danke für die Erhellung. Klingt danach, als wäre das nicht so einfach
mit einem "simplen Mikrocontroller" umzusetzen, zumindest müßte man
wissen, wie die einzelnen Abschnitte dann aussehen müßten.
> i2C Schnittstelle: Sehe hier evtl. zwei verschiedene Ausgänge der I2C> Schnittstelle, evtl. intern bzw. extern, auch zweckentfremdet (TA211).> Müsste untersucht werden.
"Viel Steine gab's, und wenig Brot"... Vielleicht ist der CAN-Weg dann
für den Moment doch der, der am ehesten umsetzbar ist...
Martin R. schrieb:> Eine Frage zur Therme selbst, vielleicht habt ihr einen Tipp.
Kann es sein, dass die Flamme zwischendurch erlischt und die Therme dann
nochmal starten muss? Hatte sowas irgendwann auch mal, da mußte - soweit
ich mich entsinne - die Brennkammer gesäubert werden.
Kann aber natürlich auch ganz was anderes sein...
Jörg R. schrieb:> Klingt danach, als wäre das nicht so einfach> mit einem "simplen Mikrocontroller" umzusetzen, zumindest müßte man> wissen, wie die einzelnen Abschnitte dann aussehen müßten.
(OK, sorry, wir brauchen ja das auch gar nicht, sondern wollen die
"echte" I2C-Funktionalität nachbilden, wie sie (hoffentlich) in BM1/2
implementiert ist).
Jörg R. schrieb:> n es sein, dass die Flamme zwischendurch erlischt und die Therme dann> nochmal starten muss?
Lässt sich das irgendwie kontrollieren? Sieht man die Flamme, oder wie
könnte ich das überprüfen?
Martin R. schrieb:> Lässt sich das irgendwie kontrollieren? Sieht man die Flamme, oder wie> könnte ich das überprüfen?
Es müßte ein Sichtfenster geben, wenn die äußere Abdeckung weg ist. Das
Problem dürfte aber sein, da zum richtigen Zeitpunkt reinzuschauen...
Nachtrag: Aber es sollte auch ohne Flamme erkennbar sein, wenn der
Brennraum verschmutzt ist.
Hallo,
Martin R. schrieb:> Die Solltemperatur der Therme wird nicht immer auf Anhieb sauber...
Verstehe Deine Sollkurve überhaupt nicht, bei Nachtabsenkung 10° oder
Frostschutz?
Jörg R. schrieb:> Spannungsfrequenz/ Frequenz_umsetzer (U/F) sorry heißt Spannungs/
Frequenz_Umsetzer;
Einige CPU's können das, halt billiger damals.
Jörg R. schrieb:> wie die einzelnen Abschnitte dann aussehen müssten.
Unterschiedlichen Frequenzen je nach Messwert(~100 bis ~500Hz) werden
hart im Takt zusammen gefügt.
Warte doch Dave's Messungen ab, heißt doch noch Garnichts. Hier ist doch
dadurch eine weitere Möglichkeit gegeben im Notfall (Ausfall der eigenen
Elektronik) auf TA211 oder auf TAxxx umzuschalten.
Jörg R. schrieb:> dass die Flamme zwischendurch erlischt
Habe dies mal in einem anderen Zusammenhang (Gaskontrolle durch die
Versorger bzw. Brennwertermittlung) im Netz gelesen. Dort wurde ein
Gerücht dargelegt, dass die Versorger Fremdgas bzw. Luft einblasen
könnten oder tun und da dann die Flamme evtl. erlöscht. "??!!!"
Martin R. schrieb:> Lässt sich das irgendwie kontrollieren? Sieht man die Flamme, oder wie> könnte ich das überprüfen?
Ein Ionenstrom fließt über die Flamme bzw. Du könntest über eine
Fotodiode
dies nochmals für dich registrieren bzw. es kommt eine Fehlermeldung.
Also Ofen oder evtl. Can-Bus.
Hallo,
möchte den CAN-Bus nochmals ins Gespräch bringen.
Hat jemand schon mal den HSM bzw. den HMM protokolliert und kann den
Telegrammkatalog erweitern.
Weiterhin habe ich den TF20 überflogen, ab TA270 bzw. <TAxxx ist
scheinbar bei einer Codierung "0" die Übernahme (&Löschung) der größeren
Daten ins TAxxx möglich.
Hintergrund: evtl. nur Änderungsprogrammierung des TAxxx über schein
TF20 und danach nur Lesen.
&Martin
Wenn ich das richtig deute kannst Du beide SOLL10 Gradpunkte verbinden
ohne Temperaturverlust, ohne zu heizen.
Die Abkühlung sieht doch identisch aus!? Hier fehlt was, stehende Wärme
(WW).
Nimm mal ein Zyklus auf.
Hallo,
Danke für die vielen Antworten. Ich werde mir die Flamme mal anschauen,
hoffe ich sehe da was. Hab auch einen Termin mit dem Installateur, weil
die letzte Wartung is auch schon wieder a Zeitl aus. Er meinte auch,
dass die Elektroden sich abnutzen und das dann schon sein kann das die
Flamme irgendwie ausgeht.
Ich habe HSM und HMM protokoliert und weiß aber leider nicht mehr
NAchrichten.
Wenn ich Heizen will, dann überschreibe ich die Solltemperaturen der
Therme und des Mischkreises. Mischkreis mach ich immer 5K kleiner als
Thermentemperaturen. (weiß eigentlich nicht warum, aber soweit
funktionierts :) ) und aktiviere die Mischerpumpe.
Ansonsten schreibe ich auf die Sollwerte 10°C und schalte die Pumpe aus.
(deshalb die langsame Abkühlung der Ist-Temperatur).
@Peter : Ich verstehe deine Frage leider nicht ganz. Kannst du mir das
bitte nochmal erklären, dann kann ich alle Daten bereitstellen :)
Hallo Martin,
bin mit nicht sicher welche Frage Du meintest.
Wenn Du den TF20 hast, möchte ich Dich nicht ins Unglück stürzen, in dem
Du die Codierung auf "0" änderst. Vielleicht kann dein Installateur dazu
was sagen.
Es währe interessant, wie sich der TF20 meldet um den Ta270 zu
programmieren. Dieses Telegramm könnte man dann über Can-Bus senden und
somit ist kein Stress mehr auf dem Bus mit abweichenden Daten.
anders:
Die Daten des Junkers_System werden indirekt geändert (Pseudo_TF20) und
es werden nicht zusätzlich ständig Eigene_Daten auf den Bus gesetzt.
Auf dem Bus ist somit dann Ruhe.
Mit HSM bzw. HMM Telegrammen könnte man dann auch diese ersetzen.
Kleines Entwicklungs- und Erkenntnisupdate:
Diese "NiRen"-ähnlichen Module sind ziemlich fleckig was Zuverlässigkeit
angeht.
Ich hatte jetzt großen Erfolg mit einem Modul von "Joy-It" wo als
Transceiver nicht der TJA1050 sondern der MCP2562 eingesetzt wird.
Darauf basierend werde ich jetzt wohl auch entsprechend PCBs designen...
Dazu habe ich große Anstrengungen unternommen das Projekt so einfach wie
möglich für alle zu gestalten. Herausgekommen ist nebst der
Konfiguration über eine Datei nun auch die Möglichkeit das Projekt über
einen integrierten Webserver zu konfigurieren.
Damit ist es nun möglich ohne Programmierkenntnisse einen ESP32 zu
bespielen und an die eigenen Bedürfnisse anzupassen.
Um den Fortschritt am Reverse-Engineering der Adressen und Daten zu
beschleunigen habe ich eine erste Version eines Analysetools mit
integriert, dass es zunächst auf rudimentäre Art erlaubt die Nachrichten
und deren Veränderung visuell zu verfolgen.
Siehe: https://github.com/Neuroquila-n8fall/JunkersControl
Ich freue mich wie immer über Kommentare, Verbesserungsvorschläge und
evtl. auch Beteiligung am Projekt!
Hallo Experten
Ich habe heute mal alle über den CAN-Bus kommenden Signale meiner
Junkers-ZSB betrachtet und da ist mir einer aufgefallen, den ich so
vorher noch nicht auf dem Schirm hatte.
0x222 liefert drei Zustände:
#0100
#0110
#0111
Da bei Signal #0110 auch der Brenner an ist, vermute ich die
Speicherladung.
Hat jemand von euch ähnliche Beobachtungen gemacht?
Gruß,
Bernd
Hallo,
inzwischen war der Heizungservice da, jedoch hat der keinen
Hardwaremangel gefunden, laut seiner Aussage tut die Therme was sie soll
und funktioniert auch.
Ich habs dann versucht ihm zu erklären, dass die Soll-Temperatur nicht
eingeregelt wird, der Brenner immer abstellt etc. Aber da stieß ich auf
taube Ohren, er hat die Taste mit dem Schornsteinfeger gedrückt, die
Therme lief los und somit war dann für ihn alles ok. Er sagt die
Elektroden etc. da ist alles ok.
Ich habe jetzt meine Sollwertvorgabe deaktiviert, es ist nur die TA270
dran.
Die Therme kann die Vorlauftemperatur nicht einregeln (so bei Uhrzeit
5:40). Man hört auch das Gebläse kaum.
Drücke ich jetzt die Schornsteintaste dreht das Gebläse hoch, jetzt hört
man schon, dass die Therme Leistung liefert. Nach 5Sekunden kann ich
dann nochmal drücken, ab diesen Zeitpunkt regelt die Therme die
Temperatur wie zu erwarten ein.
Also es braucht initial diesen Impuls von der Schornsteintaste?
Ich kanns schwer erklären, und verstehen tu ich es sowieso nicht :)
Aber was könnte da los sein?
Ich bin schon kurz davor die Schornsteintaste auch remote "schaltbar" zu
machen, also ein Relais parallel zu schalten. Würde das Problem aber
vorher schon gerne verstehen.
Irgendwelche Ideen?
Nach den vollkommen unerklärbaren Phänomenen die ich bis jetzt an diesen
Heizungen erlebt habe kann ich auch hier eventuell nur auf das Mainboard
tippen, was einen weg hat. Die "Schornsteinfegertaste" ist ja die Taste,
die u.A. das Kennfeld auf Emissionsprüfung stellt. Kein Wunder, dass es
damit richtig anläuft.
Hallo Martin,
in der Aufzeichnung wird wohl die Pumpe aktiv erwähnt, aber nicht
gezeichnet?
Hast Du die Pumpen_Aufzeichnung deaktiviert. Oder hörst Du die Pumpe?
Hast Du evtl. zwei Pumpen, Mischer?
Ohne Pumpe arbeite die ganze Regelung mehr als schlecht.
Die Zeiten der "Schwerkraftheizung" sind vorbei.
Hallo,
die Werte für die Pumpen habe ich ausgeblendet, sorry für die
Verwirrung. Beide Pumpen (Heizung und Mischerkreis) laufen.
Heute hatte ich auch wieder was Interessantes gesehen.
Wieder das übliche Takten und dann wurde Warmwasser gemacht und danach
wurde die VL-Temperatur erfolgreich eingeregelt.
Die Therme treibt mich noch in den Wahnsinn, diese Saison sollte sie
noch durchhalten, dann kommt was neues.
Falls jemand ein gebrauchtes Mainboard herumliegen hat, ich würds nehmen
und mit dem probieren :)
sG
Martin
Hallo,
Martin R. schrieb:> ...Wieder das übliche Takten und dann wurde Warmwasser gemacht und danach> wurde die VL-Temperatur erfolgreich eingeregelt.
Takten heißt nach meiner Erfahrung Wärme wird nicht abführt.
Warmwasser hat mit dem Dreiwegeventil zu tun, vielleicht funktioniert
das Ventil nicht einwandfrei und klemmt.
Seltsam ist das die Takt_Temperatur immer unterhalb der Solltemperatur
ist, somit dürfte er doch gar nicht Takten. Die Taktung findet ja, wenn
ich es richtig sehe, zwischen 25 und 35 Grad statt.
Ich glaube nicht das dein Board defekt ist, leider nur ein Gefühl.
Hi,
takten ist vermutlich der falsche Ausdruck, die Solltemperatur wird
nicht eingeregelt weil der Brenner vor erreichen der Solltemperatur
schon abstellt.
Warum auch immer?
Nun,
wird allgemein als "Takten" bezeichnet und zwar aufgrund des letzten
Bildes sogar ein sehr schnelles Takten.
Deine Bilder zeigen hierbei ein konstantes Temperaturverhalten.
Eine Regelung findet nur zwischen den beiden Temperaturwerten statt.
Scheinbar ungeachtet des Sollwertes, bis zur Unterbrechung.
Vermutung, evtl. sind hier im Hintergrund Heizung spezifische Werte im
Eingriff bzw. Grenzwerte werden verletzt.
Habe ich richtig verstanden das Du HSM und HMM, also mindestens 2 evtl.
sogar 3 Kreise(WW) hast.
Hallo,
es sind ein gemischter Kreis, der Mischerkreis geht direkt zur
Fußbodenheizung. Der heizkreis ist über eine hydraulische Weiche an den
Mischer gehängt, dort wird sonst keine Energie abgeführt.
Wurde vom Vorbesitzer so gemacht, vermutlich wegen zu kleinem
Volumenstrom der Therme.
sG
Martin
Ich hab noch ein wenig im Internet gesucht, im HTD-Forum hab ich
folgendes gefunden :
https://www.haustechnikdialog.de/Forum/t/173576/Junkers-ZSBR-7-25-A23-Probleme-mit-Regelung
"
Was war nun der Fehler?
Nach der Reinigung des Wärmetauschers hat mein erster Heizungsexperte
die Abgasmessung durchgeführt und festgestellt, dass der CO2-Wert zu
hoch war und die Gasmenge an der Gasarmatur CE 427 verändert. Er hatte
Schwierigkeiten den CO2-Gehalt unter 10 % zu bekommen. Da er auch den
quietschenden Lüfter hörte hätte er den Fehler eigentlich erkennen
müssen. Er sagte nur, "Der Lüfter muss mal ausgetauscht werden".
Durch die geringere Brennluft (defekter Lüfter) und der demzufolge
angepassten Gasmenge war die Kleinlast in die der Brennwertkessel ZSBR
7-25 A23 durch Modulation fährt so klein, dass der minimale
Ionisationsstrom von ca. 1 µA unterschritten wurde und der Brenner ohne
Fehlermeldung abschaltete. Dass der Ionisationsstrom den Brenner
abschaltet, war bei der Messung des Ionisationsstroms nicht direkt
ersichtlich, da der Vorgang sehr schnell abläuft.
Nach der Reparatur des Lüfters und der damit höheren Brennluft war der
Fehler nicht weg, da die Gasmenge weiterhin klein war. Erst als ich als
Heizungsleihe verbotenerweise die Gasmenge um zwei Schraubendrehungen
erhöht habe war der Fehler behoben und der Kessel arbeitet nun wieder
ohne ewiges Takten.
"
Ich verstehe zwar den Zusammenhang nicht ganz, aber die Symptome waren
exakt wie bei mir, denke da muss nochmal der Installateur zu mir kommen.
Vor 2 Monaten wurde bei mir auch der defekte Lüfter durch einen
neuwertig (aber gebrauchten) getauscht, vielleicht hängt das alles
zusammen?
Hallo Martin,
muss noch mal auf deine Anordnung deiner Hydraulischen Weiche zurück
kommen.
Den Einbauort verstehe ich nicht ganz. Ist dieser identisch mit dem in
der HMM Doc beschreibenden Beispiel. Hört sich seltsam an.
Es muss auch eine separate Pumpe im aktiven Mischerkreis vorhanden. Dazu
findest Du eine gute Beschreibung unter
bosy-online.de/hydraulische_weiche.htm.
Vielleicht liegen hier deine Probleme.
Hallo,
wie haben hier eine gut 20 Jahre alte Cerapur (ZSBR 3-16 A 21) im
Keller. Die würde ich gern mit meinem HomeAssistant bekannt machen.
Langt für den CAN-Bus ein Junkers BM2 oder muss es ein BM1 sein? Von da
über einen NiRen an den D1 mini, richtig? Oder brauchts auch noch eine
Steuereinheit/Fernbedienung? Wenn ja (glaub gelesen zu haben, ohne ist
nicht alles steuerbar): wäre eine TA 271 passend?
Danke für die Hilfe und nebenbei auch Respekt für eure Arbeit und das
erarbeitete Know-How!
Thomas
Hallo,
die Frage kommt mir bekannt vor? ...vielleicht etwas mehr lesen.
Nun Du benötigst ein HT_Board, nach meiner neusten Erkenntnis hat auch
dein Ofen dies.
BM1 und BM2 ist (soll &Jörg) weitgehend identisch sein.
Wenn Du nicht "der" Softwerker bist, solltest Du als Zugang zu deinem
System noch ein TA250 oder TA27x haben.
!kein Ta211 oder Uhr im Ofen.
NiRen und D1 Mini (warum nicht D1 R3 R32) sollte gehen, aber NiRen neee
.... CANdiy-Shield V2 -Watterott zur Zeit verfügbar.
@Peter:
Ja, hydraulisch schaut das genauso aus wie in der Doku, eine zusätzliche
Pumpe für den gemischten Kreis ist vorhanden.
Das System hat letztes Jahr ohne Probleme funktioniert.
Aber aktuell tut sich die Therme schwer die VL Temp zu erreichen.
Der Installateur meinte, die Steuerplatine ist defekt und muss getauscht
werden, kostet 600€ ohne MwSt und Einbau :)
Ich mach jetzt folgendes, extrem quick&dirty, aber die Therme muss
diesen Winter noch durchhalten, nächstes Jahr kommt eine LWWP.
Wenn die VL-Temperatur nach 15 Minuten nach einschalten des Heizbetriebs
nicht erreicht wurde, dann wird die Schornstein-Taste gedrückt,
10Sekunden gewartet und dann wieder gedrückt. "Drücken" erfolgt mittels
Relais, parallel zum Taster. Damit klappts soweit problemlos, wenn auch
sehr sehr "hingebastelt" :)
Hallo Martin,
nun, Du bist vor Ort und kannst das sicher besser beurteilen...???
Aber bei eBay und...Kleinanzeigen sind momentan ein paar Heizungen
günstiger als !600 Euro +++! zu haben. Handeln, kaufen...Sommer abwarten
und evtl. einbauen oder lassen und in der Zwischenzeit weiter suchen.
Weil,...ich glaub nicht an einen so großen Fehler.
Tja, wie bei mir. Ich habe kurzerhand einfach die Platine ausgebaut, die
exakte Teilenummer notiert und habe dann nach dieser Teilenummer ein
Ersatzboard gekauft. Damit lief dann wieder alles wie gewohnt und die
Taktung steht jetzt mit durchschnittlich 5 mal die Stunde auch voll im
Bereich des Vertretbaren.
Das Board auszutauschen ist echt einfach aber man muss natürlich vorher
die Therme komplett spannungsfrei schalten. Für absolute Sicherheit noch
den Gashahn zudrehen. Danach ist prinzipiell sämtliches Risiko
ausgeschlossen. Wenn man sich das nicht zutraut, dann steht's halt doch
leider bei den mehreren hundert € für eine Reparatur.
Für den Tausch habe ich übrigens ca 10 Minuten gebraucht und das neue,
gebrauchte Board kostet um die 100€.
Hab mich auf das Abenteuer eingelassen ;-)
In der Cerapur steckt jetzt ein BM2, daran erstmal nur die TA 271 (bevor
ich einen ESP dazwischenhänge, wollte ich erstmal die Standardfunktion
sehen).
Klappt so enigermaßen: die beiden rechten PINs am Busmodul brauchts zur
Kodierung per Widerstand (ohne kommt der Fehler CC, läuft jetzt also als
"Modul 2").
Damit habe ich aber nicht nur ein kosmetisches Problem (Anzeige "Modul 1
fehlt"), sondern auch keinen Außentemperaturfühler mehr.
Der war (bzw. ist noch immer) direkt an der Cerapur angeschlossen; wenn
ich das richtig verstehe, sollte er eigentlich "umziehen" auf das
Busmodul - allerdings sind die Anschlüsse da ja vom Kodierwiderstand
belegt.
Jetzt also dauerhaft -20°C und entsprechend fehlende Regelung.
Was tun (und sagt jetzt bitte nicht: BM1 kaufen)?
Hallo,
Thomas schrieb:> Klappt so enigermaßen: die beiden rechten PINs am Busmodul brauchts zur> Kodierung per Widerstand (ohne kommt der Fehler CC, läuft jetzt also als> "Modul 2").
Woher hast Du diese Weisheit? Steht da zufällig AF drauf. Wie
Außenfühler.
Fehler CC:
CC blinkt.
Außentemperatur-NTC nicht erkannt.
(Heizgerät heizt entsprechend Außentemperatur von -20°C.)
Da scheint der Außenfühler nicht richtig kontakt zu haben.
Thomas schrieb:> Der war (bzw. ist noch immer) direkt an der Cerapur angeschlossen; wenn> ich das richtig verstehe, sollte er eigentlich "umziehen" auf das> Busmodul - allerdings sind die Anschlüsse da ja vom Kodierwiderstand> belegt.
Wo war der Außenfühler angeschlossen, doch am TA211 oder?
Hallo und vielen Dank für die Unterstützung!
Die Cerapur ist vom Typ ZSBR 3-16 A 21, installiert 2001; sie hat ein
Textdisplay, der Außenfühler ist "unten rechts" angeschlossen
(Beschriftung A/F) und wird erkannt solange kein Busmodul mitspielt.
Die Klemmen A/F am Busmodul sind laut Anleitung/Serviceheft beim BM1 zum
Anschluss des Außenfühlers, beim BM2 aber für den Kodierwiderstand.
Wenn ich A/F am BM2 offen lasse oder da den Außenfühler anschließe,
kommt der Fehler CC - ist genau so dokumentiert.
Mit dem richtigen Kodierwiderstand wird das BM2 als Modul Nummer 2
erkannt und prinzipiell funktioniert der CAN-Bus inkl. TA 271, nur wird
halt angezeigt "Busmodul 1 fehlt" und es gibt natürlich keinerlei Daten
vom Heizkreis 1 - und auch keine Außentemperatur.
Demnach fürchte ich, der Gedanke "egal ob BM1 oder BM2, die sind eh
baugleich" ist nicht so ganz richtig ...
Hallo,
muss Dir leider Recht geben. Habe gestern noch BM2 Doku (6720610043.pdf)
heruntergeladen, hier steht eindeutig:
https://www.bosch-thermotechnology.com/de/de/wohngebaeude/service-und-support/dokumente/bedienungsanleitungen/
Zitat BM2:
Das BM 2 ist nur bei Kaskadenschaltung von
mehreren Heizgeräten mit busfähiger Bosch
Heatronic zu verwenden.
Hier werden auch die Widerstände aufgelistet als Beipack.
Kodierwiderstand Ω
BM 2/2 7870
BM 2/3 10000
BM 2/4 14700
BM 2/5 30100
Es ist seltsam, das diesbezüglich noch keine Info kam, es wurde doch
schon BM2 verbaut.
Vielleicht kannst Du über eine andere Stelle die Außentemperatur
einpflegen oder das Manko auf andere Weise beseitigen.
Hallo Thomas,
ein Gedankenspiel von mir, vielleicht hast Du sogar eine bessere
Variante mit dem BM2.
Dadurch das Bosch hier ein CAN-Bus_System zum Master/Slave System
degradiert hat. Hast Du evtl. den Vorteil Dich als Master (!der ja
fehlt) auszugeben. Ein ESP_Can könnte diese Aufgabe evtl. einfacher
übernehmen als in der herkömmlichen Vorgehensweise, immer wieder
dazwischen funken. Die Werte des Slave's werden zum Ist-Wert Master.
Ich kenne die Telegramme zwischen Master und Slave nicht, aber die
könntest Du ja scannen.
Die "fehlende" Außentemperatur könnte trotzdem vorhanden sein, nur nicht
ausgewertet werden. Da im Service Pkt. 1.9 die BM1/BM2 die gleiche
Kennung hat, sollte sie andere Karten (Textdisplay-AF) trennen.
Vielleicht einfach mal ursprünglichen Steckplatz mit Fühler messen.
Sollte so unter 5V bzw. evtl. <24V liegen. Auswerten!
nur ein Gedanke.
Das mit dem BM2 ist strange...
Es gibt jedenfalls mind. 2 Generationen von BM1 bzw. BM2, einmal recht
schlank bestückt, und einmal mit einem "großen" CAN-Transceiver, der
auch fehlertolerant ausgelegt ist (würde letzteres mal als V2
bezeichnen). Bei mir hat jedenfalls die "neue" Variante von BM2 erst mal
funktioniert, allerdings sind dann die Spannungen irgendwann in Regionen
verschoben worden, in denen dann erst mal nichts mehr ging (mit dem
ESP+Transceiver). Daher habe ich auch ein BM1 daliegen, das aber auch
nicht funktioniert.
Bin grade noch an ein paar anderen Themen dran (und mit dem einigermaßen
einverstanden, was die TA250 grade so vorgibt), daher die derzeit etwas
spärliche Rückmeldung.
Seltsamerweise machen beide Module aus der von der Therme kommenden
Spannung von 24V was anderes außerhalb der Spec, nämlich einmal knapp
15V (BM1, alt) und einmal knapp 30V (BM2 neu, aber nach Verschiebung,
das hatte erst saubere 24V geliefert!). Die TA funktioniert mit
beiden...
Nachtrag: Am BM2 habe/hatte ich "ganz normal" den Außentempfühler
angeschlossen, keinen Kodierwiderstand...
Hallo,
kann ich auf ganz Linie bestätigen, kenne schon alleine zwei BM1
Bestückungsvarianten ohne jemals etwas darüber gelesen zu haben, warum
weshalb hier Unterschiede gemacht wurden. Vermute allerdings, das die
Änderung zur Stabilität des CAN-Bus führen sollte oder zur Erkennung von
Fremdgeräten.
Allerdings habe ich auch Zweifel, das alle BM2 bei ebay auch BM2 sind.
Ein BM2 benötigt (so PDF) keinen LM317 (To-220) für die Stromquelle des
Außenfühlers und sind währen somit identisch mit BM1!??
Hier liegt evtl. auch eine zu knappe Stromversorgung im BM1, gewollt??
Die Probleme mit dem CAN-Bus hat wohl jeder schon erfahren und mein BM1
hat damals 14,40V und Dave's 17V. Diese Unterschied sprechen schon für
sich. Entweder ist fast jedes Modul defekt oder einfach schlechte
Hardware.
In deinem Zusammenhangt mit der Benutzung des TA250 und BM2 fiel mir
ein, das TA 250 nur einen Kreis steuern kann und dies auch nur
vorgesehen ist. TA270/271 bzw. 300/301 ist vorgesehen für Kaskaden und
mehrere Heizkreis (mit TF20, HSM und HMM). Somit hast Du scheinbar eine
Benutzung (TA250) ohne Fehler, aber auch kein AF oder ?
Nun, kommt es für Thomas noch schlimmer TA271! War für mich halt nur
eine Weiterentwicklung, aber!
TA271. pdf
Dieses Zubehör kann nur an ein
Heizgerät CERAPUR MAXX angeschlossen werden.
Für Kaskaden sind Heizgeräte ab
Fertigungsdatum FD 584 zu verwenden!
zu lesen in der TA271 Beschreibung.
Dann hab ich wohl gleich an mehreren Stellen Probleme ... und falsche
Hardware.
Mein BM2 ist tatsächlich mit dem kleinen Chip bestückt; ich halte das
allerdings eher für das neuere Modell, günstigere Bauteile, dafür evtl.
eingeschränkter Funktionsumfang (z.B. nicht kompatibel mit BM1?).
Die TA271 hat übrigens keine Probleme bereitet - abgesehen vom fehlenden
"System 1".
Da die Heizung nach dem Tausch der Hauptplatine (bzw. der gesamten
Bedieneinheit) jetzt aber auch bei mir zufriedenstellend funktioniert
(bis auf die fehlende nächtliche Pumpenabschaltung, aber das ist wohl
ein anderes Thema), werde ich meine Bemühungen diebezüglich auch erst
mal einstellen.
Ich hab aber mal die Spannung am AF gemessen - bei 0..3°C waren das
1,80..1,76 V , vielleicht hilft es jemandem.
Nochmal vielen Dank euch allen und weiterhin viel Erfolg!
Thomas
Hallo,
Schade..,
nun Du hast eine defekte Steuereinheit, die aber weitgehend
funktioniert, Du hast ein CAN-Bus Adapter BM2 und ein Bedienteil TA271
und siehst nicht die Möglichkeit dein Problem zu lösen!??
Gerade jetzt kann das Spiel beginnen. Na Gut, die Zeit..?? Die Zeit ist
aber auch dein Vorteil die Du hast, deine Heizung läuft. Mein
aufgezeigter Vorschlag mal ausprobieren.?? Vorsichtig am Pumpenausgang
(Lampen montieren und an der Hochspannung (alte Elektroden montieren Zur
Masse).....
@BM2
> eingeschränkter Funktionsumfang : nein, glaube ich nicht, die Größe der CPU:
evtl. Möglichkeit die garantiert nicht genutzt werden. PORT's....usw. Aber ohne
Schaltplan kann man nur Vermutungen tätigen.
@Pumpen
> bis auf die fehlende nächtliche Pumpenabschaltung: Warum??? evtl. Stromverbrauch
ja/nein!!;
Hast Du ein isoliertes Haus, wenn ja muss es sehr schlecht isoliert
sein. Das Du die Heizung abschalten willst... Energie kontrolliert
erhalten statt auskühlen. Ich gebe Dir Recht... hier gibt es Schwellen
die berücksichtigt werden müssen und schwer bzw. nur langfristig zu
ermitteln sind.
Was übrig bleibt ist der hohe Stromverbrauch unserer Pumpen. Junkers hat
inzwischen eine Hocheffizienzpumpe als Ersatz UPMO 15-50 TTAO (130),
alte Pumpen sind scheinbar nicht mehr zulässig. 350 Euro für 60W max,...
besser Alpha2 15-60 (130) bzw. evtl. Wilo Stratos-PICO "-plus 15/1-6"
oder so.
Natürlich kommt es auch auf die Anlage an.
@AF
Wenn Du mit CAN-Bus (BM2) gemessen hast, ist der Temperaturzweig doch
bestromt. Somit kannst Du die Temperatur/Widerstandswerte (Beschreibung)
als Stützpunkte zur Berechnung der Temperatur nutzen und interpolieren
und per CAN_Bus unter 0x207 mitteilen.
Hallo,
ich les' hier schon noch mit, wahrscheinlich packt's mich doch
irgendwann wieder ;-)
bzgl. Nachtabschaltung:
die verbaute Pumpe braucht halt um die 80 W, was nicht wenig ist, vor
allem wenn keine Wärme zu verteilen ist.
Das Haus ist schon ganz ordentlich gedämmt und nachts wird - natürlich -
eher nicht geheizt; aber die nicht smarten Thermostatventile (an den
Raumkreisen der Fußbodenheizung) werden halt weiterhin fordern. Das war
einer der Gründe, warum ich mich in die Steuerung einklinken wollte.
bzgl. BM2-Hardware(-Generation):
ich meinte nicht "kleiner = weniger Features", eher "kleiner weil neuer"
(ganz früher gab's mal einzelne Transistoren), die Annahme (stimmt:
Spekulation) war: es wurden beim Redesign Features weggelassen (evtl.
noch nicht einmal bewusst), die nicht zwingend erforderlich waren ...
Gruß,
Thomas
Thomas schrieb:> bzgl. BM2-Hardware(-Generation):> ich meinte nicht "kleiner = weniger Features", eher "kleiner weil neuer"
Die Rechnung haut mAn. so nicht hin. Lt. FD-Nummer ist das "BM2" mit dem
großen IC das neuere...
Das andere wurde als "BM1" verkauft. Wenn man in der Bucht sucht, findet
man zu beidem auch beide Versionen.
Hallo,
nun BM2 (großer CPU) beinhaltet ein komplettes "80C51 System mit
integriertem CAN-Bus" mit ROM (extern)und den Feinheiten der damaligen
Zeit..16bit Adressbus usw. Beschreibungen des BM2 System liegen nur mit
großem CPU vor.
Weiterhin wird BM2 als kompatibel zu BM1 angepriesen von Firmen die BM2
ohne großen CPU verkaufen!?? Dies, stimmt wieder nicht mit der
Beschreibung überein. Neuere Hardware sehe ich nicht.
Wie schon geschrieben währe dies interessant mal durchzutesten, aber
wann ist HT3 (~2006-09) herausgekommen? Seit dem wird bei Bosch sicher
auch keine Hardware HT2 weiterentwickelt.
Man kann sich freuen wenn es noch funktioniert.
Nunja um da die letzten Zweifel auszuräumen hätte ich eine Idee.
Ich hätte ein funktionierendes BM1 zum Testen abzugeben, falls das
Klarheit in die Probleme bringen könnte.
Falls gewünscht kann ich das dann auch stark vergünstigt überlassen.
Hallo Dave,
Frage, hast Du mal deine Optimierung der Vorlauftemperatur über den
Ventil_Status kontrolliert.
Ehrlicherweise habe ich ein Problem mit dem Prinzip aus deiner Formel
heraus. Eine grafische Unterstützung währe hier vielleicht hilfreich.
Mein ähnliches bestreben den jeweiligen Ventilstatus zu nutzen die Last
zu reduzieren erwies sich als Fehleinschätzung. Es kann nur daraus
entschieden werden ob eine Reduzierung der Vorlauftemperatur im System
möglich ist.
Die Reduzierung bringt aber nichts nennenswertes an Einsparung. Zu
mindestens habe ich kein Unterschied festgestellt. Eine Einteilung in 3
Zonen, zu heiß richtig, zu kalt sehe ich als zweckmäßig.
Hast ein Regelsystem am Heizkörper und stellst eine Temperatur ein,
fängt er anfangs an zu Takten, "an" "aus" mit kleinen Öffnungen (P).
Reduzierst Du die Vorlauftemperatur mit gleicher Temperatureinstellung
versucht er mit einer größeren Öffnung die fehlende Energie
auszugleichen (Durchflusserhöhung). Einfach eine Verschiebung von
Temperatur auf Masse, die Energie bleibt scheinbar gleich.. Bis es nicht
mehr klappt " zu Kalt" (zur Temperatureinstellung).
Ich habe auf Ebay einen BM2 gekauft (mit kleinem chip). Habe keinen Can
Bus Regler. Therme läuft nur mit Kodierwiderstand - sonst Fehler CC.
Habe Gerät 2 eingestellt.
Scannen des Can Busses liefert die gleichen Updates von der Therme, die
sonst unter 0x20x geschickt werden, aber statt dessen unter 0x23x. Das
ergibt Sinn - in einer Kaskade müssen alle Thermen unterschiedliche IDs
verwenden.
Mein Problem: die Therme reagiert nicht auf 0x25x oder 0xf9 und geht
nach kurzer Zeit auf Error A8.
Meine Hypothese: Geräte die an einer BM2 hängen müssen genauso über
einen anderen Id Bereich vom Regler gesteuert werden. Nur welcher?
Einige Versuche liefern bisher keinen Erfolg.
Wahrscheinlich hat bisher keiner eine Kaskade belauscht, oder? Kann die
Therme aus dem A8 Zustand wieder aufgeweckt werden durch Senden eines
korrekten Codes? Falls ja könnte ich den ID Bereich einfach durchtesten.
Zum Thema BM2: es gibt offenbar zwei Klassen. Geräte der ersten lassen
sich durch Anschluss des Aussenfühlers zu BM1 machen. Die anderen
blockieren die Therme in diesem Fall mit Error CC. Für diesen 2. Fall
ist es wichtig den BM2 mit anderen can bus Adressen zum laufen zu
bekommen. Da der BM1 ja unbezahlbar ist.
Hallo Joe,
nun nach den letzten Beiträgen über BM2 (hoffe doch gelesen) kann ich
nur sagen deine freie Entscheidung.
Aber,... sollte man doch nutzen und wo sind die guten Bild von beiden
Seiten BM2. :-).
Was heißt Du hast kein CAN-Bus Regler?
Joe Lucid schrieb:> in einer Kaskade müssen alle Thermen unterschiedliche IDs> verwenden.
Woraus leitest Du das ab?, ID heißt nicht unbedingt Gerät. Hier wird
weitgehend mit einem Daten_Byte gearbeitet. Also stehen dir theoretisch
7 byte zur Codierung der Routine zur Verfügung. Aber egal.
Joe Lucid schrieb:> Mein Problem: die Therme reagiert nicht auf 0x25x oder 0xf9
Nun was sagen denn diese Routinen aus, 0xF9 war nach wie vor bei mir
unbekannt, vielleicht ein Marker für xx.
0x25x sind Routinen die vom Ta250 versendet werden. Ein TA250 ist aber
nicht fähig mit anderen Geräten zu arbeiten!! evtl. dein Error A8
Also musst Du, mindestens laut Bosch Junkers, einen TA270 oder > haben
und dann werden sicher auch hier die Routinen ID's sich ändern.
Joe Lucid schrieb:> Meine Hypothese:....
Dein TF20 und HMM im Kreis x: Scannen Im System?? wie gesagt deine
Entscheidung BM2 viel Arbeit aber evtl. lösbar.
Joe Lucid schrieb:> Zum Thema BM2: es gibt offenbar zwei Klassen. Geräte der ersten lassen> sich durch Anschluss des Außenfühlers zu BM1 machen.
Bin sicher, hier werden einige auf den Beweis warten.
Joe Lucid schrieb:> Für diesen 2. Fall> ist es wichtig den BM2 mit anderen can bus Adressen zum laufen zu> bekommen. Da der BM1 ja unbezahlbar ist
Verstehe ich nicht ganz,.. ersetze Therme 0 ! durch einen Arduino/Can
oder so.. und mache Ihn zum Master der Kaskade. Kein BM1 kein Ta270...
BM2 an deiner Therme. Alles erstmal Theorie!!! Winter ist kalt.
Master gibt Slave vor, in der Kaskade.
Peter* schrieb:> Hallo Dave,>> Frage, hast Du mal deine Optimierung der Vorlauftemperatur über den> Ventil_Status kontrolliert.>> Ehrlicherweise habe ich ein Problem mit dem Prinzip aus deiner Formel> heraus. Eine grafische Unterstützung währe hier vielleicht hilfreich.>> Mein ähnliches bestreben den jeweiligen Ventilstatus zu nutzen die Last> zu reduzieren erwies sich als Fehleinschätzung. Es kann nur daraus> entschieden werden ob eine Reduzierung der Vorlauftemperatur im System> möglich ist.> Die Reduzierung bringt aber nichts nennenswertes an Einsparung. Zu> mindestens habe ich kein Unterschied festgestellt. Eine Einteilung in 3> Zonen, zu heiß richtig, zu kalt sehe ich als zweckmäßig.>> Hast ein Regelsystem am Heizkörper und stellst eine Temperatur ein,> fängt er anfangs an zu Takten, "an" "aus" mit kleinen Öffnungen (P).> Reduzierst Du die Vorlauftemperatur mit gleicher Temperatureinstellung> versucht er mit einer größeren Öffnung die fehlende Energie> auszugleichen (Durchflusserhöhung). Einfach eine Verschiebung von> Temperatur auf Masse, die Energie bleibt scheinbar gleich.. Bis es nicht> mehr klappt " zu Kalt" (zur Temperatureinstellung).
Benutzt werden daher bei mir Raumthermostate an der Wand und die geben
auch die Leistung an, die benötigt wird. Ich setze ausschließlich
Homematic IP ein und anscheinend sind die Teile lernfähig genug, wenn
überhaupt, dass es wunderbar klappt. Das System balanciert sich relativ
schnell ein. Ich habe dazu Bilder angehängt und erkläre die im folgenden
Text.
Ich habe mittlerweile eine etwas komplexere Steuerung laufen. EG und OG
werden prozentual gewichtet. Die resultierende
Durchschnittsventilöffnung wird dann als Vorgabe für die maximale VLT
benutzt.
Derzeit fahre ich zwischen 70/30 +/- 5: 70% Gewichtung EG gegen 30%
Gewichtung OG.
Die VLT beträgt nun im Schnitt bei -5°C bis 0° ca 45°C, war vorher
60-70°C. Vor dem Mainboardtausch taktete die Heizung auch fröhlich gegen
85°, auch wenn ich nur 40° haben wollte. Der Durchschnitt machts. Dazu
später mehr...
Da die Thermostate selbst schon mit Hysterese (3K meine ich) arbeiten
und die Ventilöffnung daher schon selbst eine Toleranz mitbringt, sah
ich das als sinnvollen Steuerwert an, musste aber sehen, dass zu viel
Energie im OG angerechnet wird.
Da die Wärmeanforderung im EG größer ist als im OG, müsste daraus eine
höhere VLT resultieren. In der Realität war die Taktung bei zu hoher VLT
einfach zu groß. Es wurden kleine Schübe hoher Energie in die Heizkörper
gepumpt.
Ich habe die Heizleistung meiner Therme auf das absolute Minimum
reduziert, dadurch braucht diese auf Sparflamme deutlich länger um die
Energie zuzuführen, benötigt aber eine deutlich geringere VLT um die
Räume aufzuheizen, da jetzt ein konstanter(er) Energiestrom an den
Heizflächen ankommt.
Ich sehe auf was du hinaus willst und ich verstehe auch die
Problematiken eines so eng an einer Kennziffer geführten Systems. Man
könnte argumentieren, dass eine höhere VLT effizienter ist, da nun nur
ein mal kräftig Energie zugeführt wird und dann nur noch gering
nachgeheizt werden muss. Das klappt aber nur in isolierten Häusern. Bei
dem Bruchsteinmauerwerk hier von Anno 18xx klappt das nicht.
Ich habe mal eine Grafik angehängt von einem normalen, kalten Tag wie
heute: Außentemperatur um 0°C +/- 5°. Gewichtung ist 75/25 aktuell.
Gestartet wird die Heizung um 5:30 und lasse sie schon auf
Betriebstemperatur fahren. Wenn dann um 6:00 die Ventile sich öffnen,
beginnt das eigentliche spektakel und das System regelt sich
selbstständig ein.
Man sieht hier schön wie die Ventilöffnung die VLT regelt und es sich
dann einpendelt. Alle Räume haben dann irgendwann im Verlauf des Morgens
die nun hust *hust* verbotenen 21°C hust *hust*
Interessant ist hier auch auf die RLT zu schauen (Bild #3). Hier sieht
man schön was der Delta-Wert in Kelvin zu bedeuten hat. Dieser steht bei
mir auf 10K. Heizt man heißer, steigt auch die RLT selbstredend und wir
wissen alle, dass hohe Temperatur gleich viel Energie bedeutet und jedes
K weniger heißt auch eine Zugabe von weniger Energie. Also sparen wir
hier den Sockelwert von sagen wir mal 10K VLT ein. Inwiefern das Kosten
spart, kann ich leider erst nächstes Jahr bei der Abrechnung sagen.
Kleine Randnotiz dazu:
Eventuell verkaufe ich das Haus hier auch demnächst und mein nächstes
Projekt wird dann wohl eine Ölheizung von 2016 werden, aber das steht
noch in den Sternen... dementsprechend werde ich Fallabhängig keinerlei
Aussagen mehr dazu treffen können. Wenn alles Spruchreif ist, würde ich
mich freuen, wenn jemand das Projekt aktiv weiter betreuen könnte. Ich
kann da dann nur noch beratend zur Seite stehen.
Wie gesagt, Zukunftsmusik.
Hallo Dave,
wie immer beeindruckend.
> Benutzt werden daher bei mir Raumthermostate
Habe mir erst vor kurzen einen Temp /Feuchte Sensor gewünscht, so groß
wie eine alte 10DM Münze selbstklebend 10 Jahre betriebsbereit usw.....
aber mit Energiebedarfsangabe wauuu. Ja, ohne Wandsensor ist es mehr als
schwer. Aber wir uns einig es kann nur ein Schätzwert sein. ELV?
EG und OG: bin ich mir nicht sicher, ob nicht eher der Raum als das
System die Priorität erhalten sollte. In der momentanen Zeit ist es ganz
sicher das System Sparsam.
> Heizleistung
Habe die gleiche Erfahrung gemacht, auch die Erfahrung das sich die
Wärme ändert. Habe in einigen Bereichen des Haues Heizkörper mit glatter
Oberfläche Design_heizkörper sie verlieren einfach ~Leistung, die
angenehme Strahlungswärme.
Meine Heizleistung habe ich von 22KW auf 10 beschränkt, angeblich kann
meine 7KW aber füllt dann ständig den Siphon auf?? Hatte den
Hintergedanken die Taktung zu reduzieren. Von wegen, die blieb.
Nun ich habe wohl keine Fußbodenheizung, aber konnte ich bis 0°C noch
fahren. Die Heizkörper hatte ich aber auch vor 15 Jahren auf 45
ausgelegt, bis aufs Bad.
Nun 3 Grad Differenz,...ist viel, habe schon auf die alten ELV FHT
geschimpft, die geben 0,5 Grad an sind aber auch mal 1,2°C und das merkt
man.
> absolute Minimum
Ja genau, Türen schließen und selbst Lüften war ein Temperaturverlust.
> dass eine höhere VLT effizienter ist
Nein, verfechte ich auf keinen Fall, möglichst optimal heißt alle
~Möglichkeiten abdecken.
> Gestartet wird die Heizung
Seltsam, bei mir werden die Heizkörper als erstes aktiviert, warum...
weil ich die Wärme schnell abführen will. Ein geschlossener Heißkreis
führt zur Taktung.(es ist kein Bypass_System vorhanden). Man sieht auch
bei Dir das der Brenner sofort wieder abschaltet. Block!
>Bild 3
super, die Effiziens der Brennwerttechnik kommt zum tragen.
> Kleine Randnotiz dazu:
Hatte mich schon gewundert, das Du dein BM1 so einfach abgeben willst.
ÖL :-( --> Sanierung - Pflicht--> Wärmepumpe wird kommen. Nimm die
Heizung lieber mit :-)..
Hier wird wohl bald jeder eine andere Heizung haben oder ergänzen. Hoffe
die Preise sinken wieder. Meine Heizung sieht aus wie neu, wenigstens
von außerhalb der Rohrleitung(WW Behälter?? meistens das Aus). Hybrid,
Pufferspeicher(um die Taktung zu unterbinden) und Solar ist bei mir
angesagt.
> wenn jemand das Projekt aktiv weiter betreuen könnte
?? Schade :-(
Peter* schrieb:> Hallo Joe,>> nun nach den letzten Beiträgen über BM2 (hoffe doch gelesen) kann ich> nur sagen deine freie Entscheidung.> Aber,... sollte man doch nutzen und wo sind die guten Bild von beiden> Seiten BM2. :-).
Ja - ich hab alles gelesen. Ich hatte den BM2 schon vor einiger Zeit
gekauft, wo noch im wesentlichen Erfolgsmeldungen gepostet wurden.
>> Was heißt Du hast kein CAN-Bus Regler?
Na - ich hab ursprünglich den TA 211 E als Regler, der ohne CAN bus
arbeitet. Der BM2 ersetzt diesen. Von daher kann ich nicht auf Basis
einer Paketaufzeichnung sehen, welche Kommandos die Therme erhalten
muss. Es sind jedenfalls nicht die 0x25x ... - und den eigenen Status
meldet die Therme auch unter 0x230 folgende.
>> Joe Lucid schrieb:>> in einer Kaskade müssen alle Thermen unterschiedliche IDs>> verwenden.>> Woraus leitest Du das ab?, ID heißt nicht unbedingt Gerät. Hier wird> weitgehend mit einem Daten_Byte gearbeitet. Also stehen dir theoretisch> 7 byte zur Codierung der Routine zur Verfügung. Aber egal.
Na jedes Can Bus Paket hat ja eine ID und dann gegebenenfalls payload.
Und ich habe beim Mitschnitt meiner die 0x230 und folgende als IDs
gesehen. Die Therme reagierte nicht auf 0x250 folgende.
0x200 ist schon mehr als ein byte - ich glaube der Adressraum ist 16
bit.
>> Joe Lucid schrieb:>> Mein Problem: die Therme reagiert nicht auf 0x25x oder 0xf9> Nun was sagen denn diese Routinen aus, 0xF9 war nach wie vor bei mir> unbekannt, vielleicht ein Marker für xx.> 0x25x sind Routinen die vom Ta250 versendet werden. Ein TA250 ist aber> nicht fähig mit anderen Geräten zu arbeiten!! evtl. dein Error A8>> Also musst Du, mindestens laut Bosch Junkers, einen TA270 oder > haben> und dann werden sicher auch hier die Routinen ID's sich ändern.
Also TA xxx hab ich gar nicht. Ich möchte die Therme nur mit dem esp32
fernsteuern statt der TA 211 E.
> Joe Lucid schrieb:>> Für diesen 2. Fall>> ist es wichtig den BM2 mit anderen can bus Adressen zum laufen zu>> bekommen. Da der BM1 ja unbezahlbar ist>> Verstehe ich nicht ganz,.. ersetze Therme 0 ! durch einen Arduino/Can> oder so.. und mache Ihn zum Master der Kaskade. Kein BM1 kein Ta270...> BM2 an deiner Therme. Alles erstmal Theorie!!! Winter ist kalt.
Ich sende mit Dave's firmware das, was ein TAxxx sonst senden würde.
Aber meine Therme geht eben sofort in A8 - auch wenn sie ihren eigenen
Status a'la 0x200 folgende kommuniziert.
3k Hysterese ist natürlich katastrophal. Ich habe mir einen Satz HR20
gekauft und bin ziemlich zufrieden damit. Werde aber eine neue Firmware
dafür schreiben und die drahtlos machen - ähnlich wie OpenHR20.
(a) Für mich ist das konstante Regeln einer Zimmertemperatur die erste
grosse Priorität. Wenn das schwankt wird es im Tiefpunkt zu kalt und man
stellt wärmer -> höhere Durchschnittstemperatur.
(b) Die zweite Priorität ist, Zimmer so schnell wie möglich von einer
niedrigen Abwesenheitstemperatur auf behaglich zu bekommen. Meistens
stehen viele unserer Zimmer leer - wenn man das in 15 min warm bekäme
könnte man alles auf 17 Grad lassen bis Wärme benötigt wird.
(c) Dritte Priorität ist minimale VL Temp damit die Basisheizleistung
effizient erbracht wird.
Wenn man es durchspielt merkt man schnell wie sich die Punkte
widersprechen: bringt man den VL auf maximale Temp um ein Zimmer zu
boosten, so wird es überall sonst wärmer - bis die Thermostate merken
dass der Vorlauf heiss geworden ist. Es müssen also die Thermostate die
VL Temp kennen, um antizipierend gegenzusteuern.
Die Zeit ein Zimmer ohne überschiessen warm zu bekommen ist deutlich
durch die Abkühlung des Heizkörpers limitiert. Man muss schon deutlich
vor Zieltemperatur gegensteuern, damit es nicht zu warm wird.
Das Problem will ich so angehen, dass ich bei Zieltemperatur das Ventil
des nächsten zu erwärmenden Raums öffne, die Soll VL Temp unterstelle
und so den VL aktiv abkühle. Also als erstes die Küche warm, dann
währende gefrühstückt wird, die Bäder hochziehen, dann die Büros usw.
Für a) ist es essenziell Abweichungen der Raumdynamik sofort zu
bemerken. Ich denke das geht gut indem man die Differenz zwischen
Heizkörper- und Raumtemperatur mit der Ableitung der Raumtemperatur
vergleicht. So wird man eine Kerze, mehrere Personen oder
Sonneneinstrahlung sehr schnell bemerken und kann entsprechend
gegensteuern BEVOR die Temperatur überschiesst - ggf mit aktiver
Heizkörperabkühlung wie oben. Ich denke der HR20 arbeitet im Rahmen
seiner Möglichkeiten schon so. Da muss man nur in den Raum kommen da
dreht der schon zu.
Mal sehen alles so klappt wie ich denke. Wird jedenfalls sicher ein
interessantes Projekt - wenn ich denn je die Therme zu steuern schaffe
:).
Je besser das Modell des Systems, desto weniger muss getaktet werden.
Wenn ich weiss, dass ich die Küche von 16 auf 20 Grad bekomme indem ich
den Heizkörper einmal auf 70 Grad bringe und ihn dann abkühlen lasse
während das Zimmer aufheizt, so kann die Therme eine Weile durchgehend
laufen und dann abschalten. Der Tod ist niedrige VL Temp zur Erwärmung
eines einzelnen Raums. Das kann nicht ohne Takten gehen.
Leider habe ich bisher nirgendwo echte Daten zur Ineffizienz des Takten
gesehen. Es ist alles nur Spekulation. Wenn man die Daten hätte könnte
man weiter optimieren - zb. die leeren Zimmer mit mehr Hysterese fahren
und damit Taktzyklen auf Kosten höherer Durchschnittstemperaturen
einsparen.
Hallo,
nur kurz
>Kommandos
nun hatte ich erst vor kurzem nochmals erwähnt. Dave hatte unter der
Adresse
https://docs.google.com/spreadsheets/d/1JzmhEbFY_GSk0Dl_e5pb2zmsy9EPlQU7bUpb9bXKxCM/edit?usp=sharing
die "bekannten ID's" zusammengefasst. Bitte selektieren, was Du senden
(TA250...) kannst und was Du empfängst (BM1). In Dave's Programm ist
ganz sicher auch eine ID Liste.
Die ID'S sind dem System entsprechend unterschiedlich (s.BM2)..
Der gebräuchliche ID Bereich des CAN Bus 11 bit (0x7FF)
ext. Bereich ID ist 29 bit mit jeweils 1-8 Byte max. Es existieren aber
auch Transportprotokolle die wesentlich mehr Bytes haben "scheinbar"....
CAN Bus Grundwissen auffrischen.
..next
Peter* schrieb:> die "bekannten ID's" zusammengefasst. Bitte selektieren, was Du senden> (TA250...) kannst und was Du empfängst (BM1). In Dave's Programm ist> ganz sicher auch eine ID Liste.>> Die ID'S sind dem System entsprechend unterschiedlich (s.BM2)..
Ja schon klar -- das hab ich mir alles angeschaut. Nur bin ich offenbar
der erste, der ein System nur mit BM2 und Kaskadengerät 2 versucht zu
steuern. Das BM2 sendet alles, was im Spreadsheet unter 0x200 ... 0x20f
beschrieben ist, allerdings mit um 0x30 erhöhten Ids, also 0x230 ...
0x23f. Es reagiert leider nicht auf die Kommandos 0x250 ... 0x25f und
geht statt dessen innerhalb von wenigen Minuten auf Fehler A8.
Es liegt nahe, dass weitere Kaskadengeräte dann unter 0x260 ..., 0x290
..., 0x2c0 ... senden. Jedes Gerät braucht ja seinen eigenen
Kommandobereich damit es separat zugeschaltet werden kann - insofern
passt 0x250 ... etwas schräg in den Id Bereich. Aber es mag auch sein
dass 0x250 ... für die Führungstherme ist und andere Kaskadengeräte
anders gemapped sind. Jedenfalls funktioniert der naheliegende Bereich
0x280 ... leider nicht.
Da ich den Fehlercode der Therme über den Can Bus auslesen kann, könnte
ich den gesamten Adressraum automatisch testen, falls die Therme nach
Empfang eines gültigen Befehls wieder aus A8 herauskommt. Mir wäre also
sehr geholfen, wenn mir jemand sagen könnte ob die Therme aus A8 wieder
herauskommt (ohne Neustart) und was das minimale Kommando ist um A8 zu
verhindern.
Wie gesagt kann ich leider nicht den gültigen Kommandobereich
aufzeichnen, da ich über keine TAxxx verfüge.
BTW - es ist möglich dass ein TA270 oder TA300 die Kaskadeninstanz 2 mit
Kommandos versorgt die A8 verhindern, selbst wenn Kaskadeninstanz 1
fehlt. Wenn also jemand einen BM2 erfolgreich mit Aussenfühler und TA270
oder TA300 betreibt, könnte man durch Ersetzen des AF mit
Kodierwiderstand 2/2 auf dem Can Bus möglicherweise sofort sehen, was
der richtige Bereich ist.
Kann aber auch sein, dass auch in diesem Fall A8 auf dem Kaskadengerät 2
angezeigt wird - weswegen ich mir für den Test ungern eine TAxxx kaufen
möchte.
Ich lasse die Heizung schon anspringen weil es immer einen Heizkörper
gibt, der 100% geöffnet ist und das ist der in der Diele im EG. Da ist
es bitterkalt aber das ist auch kein Wohnraum. Über diesen Heizkörper
lasse ich überschüssige Energie abfließen, damit mir keine Eisbahn
entsteht.
Diese halbe Stunde "vorglühen" sorgt auch dafür, dass es weniger
Geräusche im Haus gibt. Die Vorbesitzer haben einfach die Rohre durch
die Wand gequetscht. Das klackert und Tackert recht hübsch, wenn man
morgens gleich auf Zieltemperatur heizt. Auf die Diskussionen mit meiner
besseren Hälfte hatte ich dann einfach keine Lust mehr, warum wochenends
man von der Heizung geweckt wird.
Mit Blick in die Zukunft:
Wenn das alles so klappt wie ich mir das vorgestellt habe, landet
ohnehin umgehend Solar + PV auf dem Dach und dazu dann später eine
Pumpe. Ich überlege sogar noch mehr Geld dann später in die Hand zu
nehmen und auf Erdwärme zu gehen. Eine gut dimensionierte und effiziente
Wärmepumpe kann nunmal bei arktischen Temperaturen nichts mehr
ausrichten und kostet nicht deutlich weniger als eine Erdbohrung +
Pumpentechnik etc. Ich habe mir sagen lassen, dass die gängigsten
WP-Modelle bereits bei -10°C zu kämpfen haben. Finde ich nicht so toll.
Zum Thema raumgeführte Steuerung:
Das geht wirklich nur effizient mit Elektroheizkörpern oder Infrarot.
Wasser ist zu träge dafür.
Zum Thema BM2, Kaskade, etc.:
Fakt ist wir brauchen hier eine TAxxx am Can-Bus. Ohne kriegen wir kein
reverse engineering zustande. Das heißt dann wohl auch Umbaumaßnahmen
bzw. Umrüstung an der Therme selbst.
Alternativ: In den sauren Apfel beißen und BM1 (das "echte") anschaffen,
zusammen mit Ta270 oder so als Backup.
Das kostet Geld, was einem natürlich die, wie man es so schön nennt,
"ROI" verhageln kann. Man gibt 100€ und mehr für Umrüstung aus und am
Ende spart man nichts ein weil die Heizung bereits optimal eingestellt
wurde. Das kann auch passieren! Habe jetzt zum Beispiel eine Nachzahlung
von über 300€ anstehen, weil das Mainboard kaputt war und die Therme 90%
der Zeit auf volle Pulle lief. Da half meine tolle Steuerung auch
nichts... Shit in, Shit out!
Dave G. schrieb:> Zum Thema BM2, Kaskade, etc.:> Fakt ist wir brauchen hier eine TAxxx am Can-Bus. Ohne kriegen wir kein> reverse engineering zustande. Das heißt dann wohl auch Umbaumaßnahmen> bzw. Umrüstung an der Therme selbst.> Alternativ: In den sauren Apfel beißen und BM1 (das "echte") anschaffen,> zusammen mit Ta270 oder so als Backup.
Am Ende mag das das Ergebnis sein - aber nicht zwangsläufig. Angesichts
der Tatsache dass die Statusmeldungen meiner Therme 1:1 mit denen mit
einer BM1 übereinstimmen (bis auf die Verschiebung von 0x30) halte ich
es für nicht unwahrscheinlich (auch im Sinne der Annahme einer möglichst
einfachen Implementierung der Firmware im BM2) dass die Kommandos
ebenfalls bis auf eine Verschiebung übereinstimmen.
Durchaus denkbar dass das automatische Abscannen funktioniert - wenn
denn der A8 Code reversibel ist. Das muss doch einem von Euch schon
aufgefallen sein, ob A8 einen Neustart der Therme erfordert oder einfach
nach Senden von gültigen Kommandos wieder verschwindet, oder? Und welche
Kommandos A8 unterdrücken.
In einem vorherigen Beitrag sagte jemand ein beliebiges Kommando mit
gültiger ID ohne payload würde A8 verhindern. In dem Fall wäre das
Scannen trivial und schnell von mir zu implementieren.
Um es kurz zu skizzieren - sagen wir eine gültige ID ohne payload ist
genug um die Therme aus A8 rauszuholen. Dann würde ich einfach von 0x0
bis 0x7ff0 in 0x10 Abständen ein Paket ohne payload senden und jeweils
warten welchen Errorcode die Therme zurück liefert. Das sind ganz 128
Versuche. Die Therme liefert nämlich selbst im A8 Zustand den Fehlercode
auf 0x236.
Ich könnte es auch einfach so versuchen - aber bei den Temperaturen
kommen schnell Beschwerden von den Mitbewohnern :). Und ich kann mir
nicht sicher sein ob die Can Bus Kommunikation zu dem BM2 überhaupt
funktioniert.
Wenn Ihr mal in Eurem Erfahrungsschatz sucht komme ich wahrscheinlich
schneller zum Ziel. Meine Mitbewohner würden es Euch danken!
Dave G. schrieb:> Zum Thema raumgeführte Steuerung:> Das geht wirklich nur effizient mit Elektroheizkörpern oder Infrarot.> Wasser ist zu träge dafür.
Ich habe ganz gute Erfahrungen mit PC Lüftern als Verstärker der
Heizleistung traditioneller Heizkörper gemacht. Da kommt jede Menge mehr
raus als bei natürlicher Konvektion.
Mit 88 Grad Vorlauf könnte man denke ich eine deutlich schnellere
Erwärmung erreichen - mit oder ohne Lüfter. Und meine Therme ist
deutlich überdimensioniert so dass die Erwärmung der Heizkörper sehr
schnell erfolgen kann. In den Büros sind ausserdem die Schreibtische
direkt an der Heizung - d.h. der Komfort steigt schneller als die
Zimmertemperatur über Strahlungswärme (ähnlich wie Infrarot).
Das echte Trägheitsproblem ist ein mögliches Überschiessen der
Zieltemperatur. Aber da bin ich optimistisch das mit feed forward
Regelung und ggf aktiver Kühlung des Heizkörpers durch Mischen mit
Wasser aus kalten Zimmern in den Griff zu bekommen.
Natürlich will man den Vorlauf nicht immer auf 88 Grad fahren, um die
Effizienz passabel zu halten. Deswegen der Wunsch nach einer
integrierten Steuerung der Therme und Ventile.
Am Ende wird man eine deutliche Verbesserung erreichen. Natürlich in
Grenzen, die dann die praktisch nutzbare Absenktemperatur bei
Nichtnutzung nach unten beschränken. Je nach Heizkörperausstattung und
Voraussagbarkeit der Nutzung wird man die Absenktemperatur für jeden
Raum individuell festlegen müssen - auch tageszeitabhängig.
Dave G. schrieb:> Das kostet Geld, was einem natürlich die, wie man es so schön nennt,> "ROI" verhageln kann. Man gibt 100€ und mehr für Umrüstung aus und am> Ende spart man nichts ein weil die Heizung bereits optimal eingestellt> wurde. Das kann auch passieren! Habe jetzt zum Beispiel eine Nachzahlung> von über 300€ anstehen, weil das Mainboard kaputt war und die Therme 90%> der Zeit auf volle Pulle lief. Da half meine tolle Steuerung auch> nichts... Shit in, Shit out!
Na komm - das echte ROI ist der Spass an der Sache! Aber beim BM1 ist's
wirklich vorbei mit dem Spass. Das Ding kostet gerne ca. 300 Euro zur
Zeit. Versuche ständig ein günstiges Exemplar zu ergattern.
Hallo Dave,
> Ich lasse die Heizung schon anspringen...
Einen kalten Raum besitze ich auch und gleiches Problem. Meine
Heizkörpereinstellung ist da momentan die einfache Funktion 15,5°C ohne
Programm. Auch hier steigt der Ventilstatus in der Nacht, aber keine 90%
mehr.
Erdwärme hatte ich mal ein Angebot, als ich ein Musterhaus besichtigt
hatte.
"Ein Angebot, das Sie nicht ausschlagen können 20000Euro...."ist auch
fast 20 Jahre her. einfach zu teuer.
@Joe
Wenn Du die Information hast, das dein BM2 zum BM1 werden kann, wo bitte
ist das Problem noch? Kleinanzeigen Ebay TA270 ~~45 bis 80Euro.
Du schreibst Du hast keine Kommunikation (A8), dann musst Du auch eine
Kommunikation aufbauen. Das geht nicht ohne, die BM1 und TA250...
Junkers Bosch geben ganz sicher keine Infos darüber heraus und erst
Recht nicht was sich der Softwerker sich so gedacht hat.
Das nur ein herumstochern, ein Restbus zu entwickeln ohne zu wissen was
gesendet werden soll!!!??
Währe schön wenn Du ein paar Bilder des BM2 senden könntest. danke
Peter* schrieb:> @Joe>> Wenn Du die Information hast, das dein BM2 zum BM1 werden kann, wo bitte> ist das Problem noch? Kleinanzeigen Ebay TA270 ~~45 bis 80Euro.
Meiner kann es eben nicht - aber wenn Du die vorherigen Beiträge
durchliest dann funktioniert es bei manchen indem einfach statt
Kodierungswiderstand der Aussenfühler angehängt wird. Meine Therme
startet dann nicht mit Fehler CC. Es gibt offenbar unterschiedliche
Versionen.
> Du schreibst Du hast keine Kommunikation (A8), dann musst Du auch eine> Kommunikation aufbauen. Das geht nicht ohne, die BM1 und TA250...> Junkers Bosch geben ganz sicher keine Infos darüber heraus und erst> Recht nicht was sich der Softwerker sich so gedacht hat.
Man kann den Regler (TAxxx) mit Dave's Software und einem esp32
ersetzen. Das ist es, was ich machen möchte. Ich brauche nur den
passenden ID Bereich.
> Das nur ein herumstochern, ein Restbus zu entwickeln ohne zu wissen was> gesendet werden soll!!!??
Meine Hypothese ist, dass die Kommandos die gleichen sind wie bei dem
BM1 - nur an einen anderen ID Bereich gemapped. Wenn das richtig ist,
muss ich den nur finden und das wäre einfach wenn der Fehlercode A8
reversibel ist.
> Währe schön wenn Du ein paar Bilder des BM2 senden könntest. danke
Siehe Anhänge
Jedenfalls meine Therme kommt wieder aus "A8", wenn man "irgendwas"
dranhängt, das (irgend?) eine gültige Info sendet, ich würde das
vorrangig mit der Raumtemperatur versuchen.
Das "nicht funktionierende" BM2 scheint ein "altes" zu sein (mit kleiner
Bestückung), und ich würde annehmen, dass ein "2." in einer Kaskade
eigentlich schon "glücklich" ist, wenn es eine Außentemperatur sieht.
Die kommt nach meinem Verständnis ausschließlich von einem BM1.
Es kann aber auch sein, dass die "Position" BM1 auch die eines Art
"Busmaster" ist, der die Adressabfrage eintaktet, das müßte man dann in
die firmware integrieren, aber dazu müßte man wissen, wie die
betreffende Logik ist (also falls jemand das in einer echten Kaskade
hat...?).
@Dave: Ich würde gerne dein überzähliges Interface nehmen und stelle
gerne auch willigen Testern mein(e) überzählige(n) zur Verfügung, sobald
ich selbst wieder aktiv an dem Thema dran bin und ggf. auch weiß, wie
man die effektiv nutzen kann (das Spannungsproblem...). Meine derzeitige
Prio liegt derzeit allerdings noch woanders, das wird vermutlich erst in
ein paar Wochen weitergehen.
Würde auch den "Notfallmaintainer" für die Firmware machen, falls sich
niemand findet mit besseren C/C++-Skills (ich bin eigentlich DAU...).
Joe Lucid schrieb:> Meiner kann es eben nicht - aber wenn Du die vorherigen Beiträge> durchliest dann funktioniert es bei manchen indem einfach statt> Kodierungswiderstand der Aussenfühler angehängt wird. Meine Therme> startet dann nicht mit Fehler CC. Es gibt offenbar unterschiedliche> Versionen.
Gibt es, siehe auch meine Bilder weiter oben. Du hast das alte mit der
"kleinen" Bestückung.
Das kann offenbar die Außentemperatur nicht selbst ermitteln, von daher
würde ich diese vom ESP her auf den Bus schieben, und zwar unter der
Adresse, die in Dave's Spreadsheet zu finden ist (keine Verschiebung).
> Meine Hypothese ist, dass die Kommandos die gleichen sind wie bei dem> BM1 - nur an einen anderen ID Bereich gemapped. Wenn das richtig ist,> muss ich den nur finden und das wäre einfach wenn der Fehlercode A8> reversibel ist.
Könnte sein, dass das mit dem Mapping hinhaut. Wie geschrieben: Bei
meiner Therme reicht es, wenn irgendeine gültige Info kommt, und das war
auch das, was Dave immer berichtet hatte (da war es lange die Uhrzeit?).
Nach dem was du schilderst, klingt es aber danach, als wäre der ESP
nicht in der Lage, was auf den Bus zu schreiben. Kannst du mal die
Spannungspegel ausmessen? Und/oder auch die Widerstandswerte (evtl. ist
auf dem alten BM1 noch ein Abschlusswiderstand?).
Jörg R. schrieb:> Jedenfalls meine Therme kommt wieder aus "A8", wenn man "irgendwas"> dranhängt, das (irgend?) eine gültige Info sendet, ich würde das> vorrangig mit der Raumtemperatur versuchen.
Super! Vielen Danke! Das hilft doch schon mal weiter.
Jörg R. schrieb:> Das "nicht funktionierende" BM2 scheint ein "altes" zu sein (mit kleiner> Bestückung), und ich würde annehmen, dass ein "2." in einer Kaskade> eigentlich schon "glücklich" ist, wenn es eine Außentemperatur sieht.> Die kommt nach meinem Verständnis ausschließlich von einem BM1.
Das ist keine schlechte Idee. Ich bin aber etwas skeptisch weil die BM?
ja nicht regeln sondern nur die Kommandos der TA??? umsetzen. Also
brauchen die gar keine Aussentemperatur.
> Es kann aber auch sein, dass die "Position" BM1 auch die eines Art> "Busmaster" ist, der die Adressabfrage eintaktet, das müßte man dann in> die firmware integrieren, aber dazu müßte man wissen, wie die> betreffende Logik ist (also falls jemand das in einer echten Kaskade> hat...?).
Wenn jemand eine Kaskade hätte wäre das natürlich perfekt. Ich denke der
TA??? würde eher den Busmaster spielen. Falls das überhaupt notwendig
ist. Der Can Bus ist ja so konzipiert dass Kollisionen erkannt werden
können. Jedenfalls schickt mein BM2 brav alle Statuspakete ohne
aufgefordert zu werden.
Man kann wohl mit hoher Wahrscheinlichkeit vermuten dass die
Kommando-IDs der Geräte 2-5 auf andere IDs als 0x250 - 0x25f gemapped
sind, damit der Regler sie einzeln kontrollieren kann.
Vielleicht noch an Dave: unterbindet beim BM1 nur 0xf9 den Fehler A8
oder reichen Pakete an andere gültige Adressen?
Jörg R. schrieb:> Gibt es, siehe auch meine Bilder weiter oben. Du hast das alte mit der> "kleinen" Bestückung.> Das kann offenbar die Außentemperatur nicht selbst ermitteln, von daher> würde ich diese vom ESP her auf den Bus schieben, und zwar unter der> Adresse, die in Dave's Spreadsheet zu finden ist (keine Verschiebung).
Funktioniert der BM2 mit grossem Chip immer? Die gibt es einigermassen
günstig - das wäre noch eine Alternative.
>>> Meine Hypothese ist, dass die Kommandos die gleichen sind wie bei dem>> BM1 - nur an einen anderen ID Bereich gemapped. Wenn das richtig ist,>> muss ich den nur finden und das wäre einfach wenn der Fehlercode A8>> reversibel ist.> Könnte sein, dass das mit dem Mapping hinhaut. Wie geschrieben: Bei> meiner Therme reicht es, wenn irgendeine gültige Info kommt, und das war> auch das, was Dave immer berichtet hatte (da war es lange die Uhrzeit?).
Sehr cool. Dann mach ichs mit der Uhrzeit!
> Nach dem was du schilderst, klingt es aber danach, als wäre der ESP> nicht in der Lage, was auf den Bus zu schreiben. Kannst du mal die> Spannungspegel ausmessen? Und/oder auch die Widerstandswerte (evtl. ist> auf dem alten BM1 noch ein Abschlusswiderstand?).
Die Pegel sehen ok aus und die Therme sendet auch das Ack bit wenn ich
was schicke. Aber gerade durchgemessen: keine Seite terminiert den Bus.
Das könnte also in der Tat Teil des Problems sein. Das teste ich beim
nächsten Versuch durch.
Wie ist die Terminierung bei BM1/TA??? aus? 120 Ohm auf beiden Seiten?
Joe Lucid schrieb:> Das ist keine schlechte Idee. Ich bin aber etwas skeptisch weil die BM?> ja nicht regeln sondern nur die Kommandos der TA??? umsetzen. Also> brauchen die gar keine Aussentemperatur.
Der BMx braucht die Außentemperatur auch nicht, aber die Therme. Hatten
wir hier weiter oben schon nette Diskussionen darüber, wie man "TA" und
Therme jeweils "einordnen" soll. Fakt ist afaik: Die Therme läuft los,
sobald sie eine Außentemperatur hat. Ganz egal, ob die vom "211" kommt
oder vom physischen Außenfühler via BM1 "alt" oder BM2 "neu". Von daher
wäre es nur logisch, dass die "alten" BM2 halt über den Bus diese
essentielle Info beziehen, und "gut ist".
> Wenn jemand eine Kaskade hätte wäre das natürlich perfekt. Ich denke der> TA??? würde eher den Busmaster spielen. Falls das überhaupt notwendig> ist. Der Can Bus ist ja so konzipiert dass Kollisionen erkannt werden> können. Jedenfalls schickt mein BM2 brav alle Statuspakete ohne> aufgefordert zu werden.
Na ja, die Umsetzung des Bus-Konzepts in diesen Thermen ist jedenfalls
einigermaßen "speziell", von daher erlebt man immer wieder
Überraschungen...
Und die Thermen nehmen die übermittelten Vorgaben nicht sklavisch an,
sondern verarbeiten die. Kommt was "zu komisches" raus, geht die Therme
in eine Art "Notbetrieb" und regelt autonom.
> Man kann wohl mit hoher Wahrscheinlichkeit vermuten dass die> Kommando-IDs der Geräte 2-5 auf andere IDs als 0x250 - 0x25f gemapped> sind, damit der Regler sie einzeln kontrollieren kann.
Jeder Teilnehmer ein eigener Adressbereich (bzw. eine eigene
"Normalverschiebung" klingt für mich logisch. Wir hatten eine Lücke
zwischen 0x25x und 0x300. Würde also für einen 2. TN dann mal auf 0x26x
tippen.
> Vielleicht noch an Dave: unterbindet beim BM1 nur 0xf9 den Fehler A8> oder reichen Pakete an andere gültige Adressen?
Aus den Diskussionen mit ihm hatte ich im Hinterkopf mitgenommen, dass
einfach überhaupt nur eine passende Adresse kommen muss, auch leere
Payloads reichen aus, um die Therme aus dem Fehlerzustand zu holen.
Joe Lucid schrieb:> Funktioniert der BM2 mit grossem Chip immer? Die gibt es einigermassen> günstig - das wäre noch eine Alternative.
Das kann ich nicht sagen, weil meiner nach den ersten Tests dann nicht
mehr mit dem ESP kommunizieren wollte (da ist die Versorgungsspannung
plötzlich auf ca. 30V hoch).
Mit der TA250 funktioniert der BM2 aber problemlos (in der Funktion als
BM1).
> Sehr cool. Dann mach ichs mit der Uhrzeit!
Nimm' aus den genannten Gründen die Außentemperatur. Damit sollte auch
die Therme ordnungegemäß laufen, wenn dieser Wert immer ok ist!
> Die Pegel sehen ok aus und die Therme sendet auch das Ack bit wenn ich> was schicke. Aber gerade durchgemessen: keine Seite terminiert den Bus.> Das könnte also in der Tat Teil des Problems sein. Das teste ich beim> nächsten Versuch durch.>> Wie ist die Terminierung bei BM1/TA??? aus? 120 Ohm auf beiden Seiten?
Jedenfalls ich war nicht in der Lage, da sinnvoll was zu messen. Die
Widerstandswerte schwanken zwischen spannungslos und in Betrieb
gemessen... Wenn du das Ack siehst, dürfte alles ok sein.
Wir sehen mehr, wenn du erst mal was passendes auf dem Bus geschrieben
hast.
Ich habe an meinem BM1
Joe Lucid schrieb:> Meiner kann es eben nicht - aber wenn Du die vorherigen Beiträge> durchliest dann funktioniert es bei manchen indem einfach statt> Kodierungswiderstand der Aussenfühler angehängt wird. Meine Therme> startet dann nicht mit Fehler CC. Es gibt offenbar unterschiedliche> Versionen.
Ich betreibe mein BM1 ohne Außenfühler mit diesem branch von Daves
Firmware:
https://github.com/Neuroquila-n8fall/JunkersControl/tree/feature-outside-temp
Der Fehler CC läßt sich bei mir folgendermaßen unterdrücken:
In main.cpp hier msg.data[0] = 1 in msg.data[0] = 0 ändern.
gradius-v schrieb:> Vielleicht hilft das auch in deiner Konstellation.
Coole Idee! Damit sollte sich rausfinden lassen, unter welcher Adresse
der 2. TN diese Angabe erwartet, oder habe ich das Prinzip
missverstanden?
Jörg R. schrieb:> Der BMx braucht die Außentemperatur auch nicht, aber die Therme. Hatten> wir hier weiter oben schon nette Diskussionen darüber, wie man "TA" und> Therme jeweils "einordnen" soll. Fakt ist afaik: Die Therme läuft los,> sobald sie eine Außentemperatur hat. Ganz egal, ob die vom "211" kommt> oder vom physischen Außenfühler via BM1 "alt" oder BM2 "neu". Von daher> wäre es nur logisch, dass die "alten" BM2 halt über den Bus diese> essentielle Info beziehen, und "gut ist".
Ah ok - danke.
> Jeder Teilnehmer ein eigener Adressbereich (bzw. eine eigene> "Normalverschiebung" klingt für mich logisch. Wir hatten eine Lücke> zwischen 0x25x und 0x300. Würde also für einen 2. TN dann mal auf 0x26x> tippen.
Ich werde die Therme beim nächsten Mal auf Gerät 3 kodieren. Mal sehen
wo sie dann sendet. Man würde erwarten 0x260 - mal sehen.
> Aus den Diskussionen mit ihm hatte ich im Hinterkopf mitgenommen, dass> einfach überhaupt nur eine passende Adresse kommen muss, auch leere> Payloads reichen aus, um die Therme aus dem Fehlerzustand zu holen.
Ja so erinnere ich es auch.
gradius-v schrieb:> Vielleicht hilft das auch in deiner Konstellation.
Hervorragende Idee! Vor allem weil es im Adressbereich der
Regler->Therme Kommandos liegt (im Gegensatz zu Aussentemperatur). Damit
werde ich es probieren.
gradius-v schrieb:> Der Fehler CC läßt sich bei mir folgendermaßen unterdrücken
Meinst Du A8 oder wirklich CC? Das ist ja sonst noch ein ganz neuer
Ansatz: BM2 ohne Kodierwiderstand und damit CC unterbinden. Vielleicht
präsentiert sie sich dann ganz normal an 0x20x.
Hallo,
Joe Lucid schrieb:> Es reagiert leider nicht auf die Kommandos 0x250 ... 0x25f und> geht statt dessen innerhalb von wenigen Minuten auf Fehler A8
das darf er auch nicht!!, weil er nicht BM1/TA270 ist, durch die
Codierung hat er seine Aufgabe bekommen und die heißt, mit timeout der
Masterheizung "bei bedarf" zu folgen (VLT).
A8 keine Kommunikation zum Bediengerät.
BM1/Ta270 muss ersetzt werden und was Heizung 2 mitgeteilt bekommt oder
wie er es weiter sendet steht erstmal in den Sternen, weil du kein
fehlerfreies System hast. Kann.. muss nicht...
BM2 muss die Id Gruppe (Soll) 0x25x ignorieren.
!! Ich würde vorsichtig sein.. mit Abschlusswiderständen 120Ohm die
werden nicht einmal erwähnt. Überlastung Zerstörung !!
Sobald die Therme ein Paket vom TA-Bereich sieht, springt sie
eigenständig aus A8 wieder raus.
Man sieht schon vorher ob Kommunikation funktioniert, wenn der
Außentemperaturfühler angeschlossen ist und die Temperatur im
Infodisplay angezeigt wird. Verschwindet die Temperatur nun, ist die
Kommunikation hinüber, kurz darauf kommt A8. Ich empfehle so oder so
diesen Fühler anzubringen, falls noch nicht vorhanden. Dadurch hat man
die Option auf einen guten Notbetrieb, wenn der ESP mal kaputt geht und
grad keine Lösung bereit liegt. Ohne Fühler läuft das Gerät einfach
ineffizient.
Sobald die Kommunikation wieder steht, taucht die Außentemperatur wieder
auf und es bleibt nur der Eintrag im Fehlerspeicher übrig.
Ich habe sehr viele schlechte Erfahrungen gemacht mit diesem Thema. Am
Ende vom Tag, und entschuldigt wenn ich das Gebetsmühlenartig
wiederhole, kann auch wenn alles perfekt aussieht einfach das Mainboard
von der Therme kaputt sein. Ich habe hier so viele Konstrukte
ausprobiert die alle den A8 geschmissen haben zuletzt, dass ich bald
wahnsinnig geworden bin.
Dave G. schrieb:> Man sieht schon vorher ob Kommunikation funktioniert, wenn der> Außentemperaturfühler angeschlossen ist und die Temperatur im> Infodisplay angezeigt wird.
Meine ZWR - 18/5 hat gar kein Infodisplay. Du meinst an der Therme,
richtig? Denn für diese Tests ist der TA??? ja gar nicht verbunden.
Dave G. schrieb:> Sobald die Therme ein Paket vom TA-Bereich sieht, springt sie> eigenständig aus A8 wieder raus.Dave G. schrieb:> Ich habe hier so viele Konstrukte> ausprobiert die alle den A8 geschmissen haben zuletzt, dass ich bald> wahnsinnig geworden bin.
Wie passen diese beiden Sätze zusammen? Wenn jedes Paket vom TA-Bereich
A8 verhindert, warum bist Du dann immer wieder dort gelandet?
Wenn man Nachrichten schickt aber die Therme trotzdem auf A8 springt und
das CAN Modul nachweislich in Senderichtung funktioniert, dann muss das
nicht heißen, dass man etwas falsches schickt. Es kann auch bedeuten,
dass das Mainboard der Therme oder das Busmodul einen Schaden hat.
Die Raumregler kommen mit solchen Diskrepanzen wunderbar klar.
Peter* schrieb:> BM1/Ta270 muss ersetzt werden und was Heizung 2 mitgeteilt bekommt oder> wie er es weiter sendet steht erstmal in den Sternen, weil du kein> fehlerfreies System hast. Kann.. muss nicht...
Ich denke es ist wahrscheinlich dass die TA??? die Steuerung im
wesentlichen übernimmt. Du siehst es daran dass die TA270 3 Geräte und
eine feste Führungstherme unterstützt, während der TA300 5 Geräte regelt
und die Führungstherme konfigurierbar ist.
Kann natürlich sein dass das Folgen der untergeordneten Geräte fest im
bm? kodiert ist und die einzelnen Thermen nicht separat gesteuert
werden. Dann würde die Steuerung nur die Rollen zuweisen.
So hätte ich das allerdings nicht gelöst, um Flexibilität für zukünftige
Steuerungen zu erhalten.
Dave G. schrieb:> Wenn man Nachrichten schickt aber die Therme trotzdem auf A8> springt und> das CAN Modul nachweislich in Senderichtung funktioniert, dann muss das> nicht heißen, dass man etwas falsches schickt. Es kann auch bedeuten,> dass das Mainboard der Therme oder das Busmodul einen Schaden hat.>> Die Raumregler kommen mit solchen Diskrepanzen wunderbar klar.
Ein Alptraum - vor allem wenn die Raumregler damit klarkommen. Da muss
ja doch noch irgendetwas instabil sein in unserem Ansatz.
Joe Lucid schrieb:> Meinst Du A8 oder wirklich CC? Das ist ja sonst noch ein ganz neuer> Ansatz: BM2 ohne Kodierwiderstand und damit CC unterbinden. Vielleicht> präsentiert sie sich dann ganz normal an 0x20x.
Wirklich CC. Und die Message 0x258 = 0 unterdrückt den Fehler.
Ich habe auch einen TA300, der sendet 0x258 = 1 und die Therme geht ohne
Außenfühler am BM1 sofort auf CC. Man kann am TA300 auch einen
Raumfühler anschließen, ich schätze dann würde er auch 0x258 = 0 senden
(nicht getstet!).
Hallo,
Joe Lucid schrieb:> Ich denke es ist wahrscheinlich dass die TA??? die Steuerung
Es ist schon so wie ich geschrieben (BM1/TA...)habe und vielleicht noch
wesentlich komplexer. TA270<... ist nur ein "Bedienteil" (Soll) aber
(Ist) ist BM1 bzw. evtl. Regelungsparameter der Thermen mit BM2.
Die normale Heizung mit BM2 ist ausgeblendet, sie wird geführt.
Ich verstehe nicht, das Du in deiner geschilderten Situation (Mieter mit
Bewohner.) dich auf eine solche Erkundung wagst.
Schon mal überlegt, statt ein Außenfühler einen Widerstand anzuschließen
evtl. ist das Hardwareproblem (Erkennung AF) gelöst und dann per SW
selektieren. Der AF muss doch vorhanden sein (TA211E oder?).... aber
nicht einen HW Fehler ignorieren.
...oder einfach überlegen... eine BM1/Ta270 zuzulegen. Man kann BM2 noch
verkaufen noch.
Habe mir erst im Sommer eine alte Heizung ZBS22 gekauft für 150Euro bis
vor die Tür kam der freundliche Mann.
verstehe ich nicht, Euer drumherum reden.
So - neue Erkenntnisse:
- Bm2 ohne Kodierwiderstand und mit 0x238 = 0 oder 0x208 = 0 bringt die
Therme nicht aus dem CC Error raus.
- Mit Kodierwiderstand hab ich mir die logs nochmal im Detail angesehen
und festgestellt dass ein zusätzliches byte für jedes update von der
Therme gesendet wird - nämlich die Instanz die man mit dem Widerstand
eingestellt hat.
Das ist natürlich sinnvoll - so passt alles auf einen Satz IDs.
Leider gelingt es mir nach wie vor nicht auch nur ein einzelnes Paket
erfolgreich an die Therme zu schicken. Ich bekomme Acks aber komme die
aus A8 raus. So kann das Problem immernoch auf der Id Seite oder der
hardware Seite liegen.
Peter* schrieb:> Hallo,>> Joe Lucid schrieb:>> Ich denke es ist wahrscheinlich dass die TA??? die Steuerung>> Es ist schon so wie ich geschrieben (BM1/TA...)habe und vielleicht noch> wesentlich komplexer. TA270<... ist nur ein "Bedienteil" (Soll) aber> (Ist) ist BM1 bzw. evtl. Regelungsparameter der Thermen mit BM2.
Ich glaub wir haben da keinen Konflikt. Der TA??? regelt die
Solltemperatur, und der BM? zusammen mit der Therme implementiert das,
was natürlich auch eine Regelleistung ist.
TA??? implementiert selber Heizkurve, Timer, Raumgeführte Steuerung usw
usf.
> Die normale Heizung mit BM2 ist ausgeblendet, sie wird geführt.
Der TA300 kann jede Maschine in der Kaskade zur Führungstherme machen.
Ist halt die Frage wie das implementiert ist. Gibt es einen Befehl zur
Zuordnung der Führungsrolle - oder schaltet der TA??? einfach manuell
eine Therme primär an und dann wenn der Vorlauf 3K unter soll hinkt eine
weitere?
Hast Du da spezifische Einsichten?
>> Ich verstehe nicht, das Du in deiner geschilderten Situation (Mieter mit> Bewohner.) dich auf eine solche Erkundung wagst.
Naja die Mitbewohner sind meine Familie. Und ich bin nicht besonders
ängstlich.
>> Schon mal überlegt, statt ein Außenfühler einen Widerstand anzuschließen> evtl. ist das Hardwareproblem (Erkennung AF) gelöst und dann per SW> selektieren. Der AF muss doch vorhanden sein (TA211E oder?).... aber> nicht einen HW Fehler ignorieren.
Ja das mach ich doch die ganze Zeit so weil der Aussenfühler sofort zu
CC führt.
Wäre natürlich wirklich möglich, dass die geführten Geräte auf Vorlauf
Soll und Ist des Masters schauen und selbständig einspringen. Aber das
erscheint mir unflexibel und beschränkt und deswegen die weniger
wahrscheinliche Implementierung.
Hallo,
es gäbe unter den vielen Möglichkeiten (Spielereien) der Sonderfunktion
"Kaskade" auch evtl. die Möglichkeit die Masterheizung nur als
Sollformation TA... zu nutzen und die Heizung x nur in der SW
umzuschalten und seine Werte selbst zu berechnen. Deshalb vielleicht
erst BM2. ("nur entgegengesetzte Spinnereien")
Zur Info: TA270 ... wird auch so mit BM10 und BM20 benutzt unter HT3.
Hast Du denn schon mal die erst Heizung BM1/TAxxx simuliert(ESP/Can)
(mit AF Id) in dem Du alle IDs auf den Bus legst zeitlich korrekt.
gradius-v schrieb:> Joe Lucid schrieb:>> - Bm2 ohne Kodierwiderstand und mit 0x238 = 0 oder 0x208 = 0 bringt die>> Therme nicht aus dem CC Error raus.>> Und mit 0x258 = 0 ?
Geht auch nicht. Das hab ich als erstes probiert, weil es schon in
Dave's Code drin ist und ich nur den Parameter auf 1 setzen musste.
Habe inzwischen noch eine weitere Theorie: seht Euch mal den Anhang an.
Alle Kaskaden benötigen einen HSM um die gemeinsame Vorlauftemperatur zu
bestimmen.
Ich könnte mir gut vorstellen, dass Therme 1 anhand des Vorhandenseins
der vom HSM gemeldeten VL Temp selber auf Kaskadengerät umschaltet (dh
dann auch auf 0x23? meldet mit erstem payload byte 1). Und dass dann die
einzelnen Thermen auf 0x28? (0x25? + 0x30, gleicher Offset wie 23? ggü
20?) wieder mit führendem payload byte als Kaskadenadresse
konfigurierbar sind.
Das wäre ein flexibler Ansatz. Es würde dem TA300 ermöglichen, das
Führungsgerät einfach dadurch zu wählen, dass es als erstes aktiviert
wird. Und er könnte so auch die zugeschalteten Thermen zufällig
auswählen um Abnutzung zu verteilen (wie das die TA300 kann).
Fragt sich nur unter welcher Id der HSM die Vorlauftemperatur meldet.
Auch interessant (siehe Anhang):
Im TA300 lassen sich die Infos der einzelnen Kaskadengeräte auslesen und
zusätzlich globale Parameter:
- Aussentemperatur
- Gemeinsamer Vorlauf Soll
- Gemeinsamer Vorlauf Ist
- Nachlauf Offset
Möglich dass einfach 0x20? für diese Parameter bei Kaskadenschaltung
benutzt wird und die Therme 1 anhand einer auf 0x20? gesendeten
Vorlauftemperatur auf Kaskadenmodus umschaltet. Aber das ist alles
Spekulation.
Zweiter Anhang zeigt die flexiblen Kaskadenparameter der TA300 die es
mir wahrscheinlich erscheinen lassen dass die TA300 selber die Kaskade
implementiert.
Hallo,
vielleicht interessant für Dich:
habe hier noch ein Schreibtischaufbau (BM1/TA250/AF/Netzteil). Es juckt
überhaupt nicht ob AF angeschlossen ist oder nicht (-20).
Sicher kann der Fehler noch unbemerkt über I2C der Heizung mit geteilt
werden.
~~Vielleicht hilft es aber den Bereich einzugrenzen.
Wird BM2 im Gerät erkannt? Service in deiner Heizung.
Jörg R. schrieb:> Thomas schrieb:>> bzgl. BM2-Hardware(-Generation):>> ich meinte nicht "kleiner = weniger Features", eher "kleiner weil neuer">> Die Rechnung haut mAn. so nicht hin. Lt. FD-Nummer ist das "BM2" mit dem> großen IC das neuere...> Das andere wurde als "BM1" verkauft. Wenn man in der Bucht sucht, findet> man zu beidem auch beide Versionen.
Habe gerade mal etwas recherchiert - mir scheint das sind beides BM1.
Produktnummern für BM1: 8744501086, 8748300289, 87472071490, 8748300370
(kleiner chip)
BM2: 8748300379, 8748300347
Das würde ja dann auch dazu passen dass nicht alle BM2 funktionieren.
Nur die, die in Wirklichkeit BM1 sind.
Hallo,
Zweifel hatte ich ja schon geäußert.
HW: wo für braucht ein BM2 eine Stromquelle LM317 to220 und die andere
nicht; Beschreibung sind nur mit großen Aufbau.
Ich besitze zwei BM1 mit gleichen Junkers Bosch Nr....370 und gleichen
"Front_Nr. ....227" die aber unterschiedlich in der HW sind.
Zwei weitere Nr. sind aufgefallen 0002 zu 0019 (~Layout_Nr.)und neben
dem Strecke SK1 (~Versions_Nr.)im Kreis 0.2 zu 0.3.
Ich kenne solch eine Kennzeichnung nicht.
Aber was hilf Dir das alles, dann müsste doch dein BMx funktionieren.
Joe Lucid schrieb:> Habe gerade mal etwas recherchiert - mir scheint das sind beides BM1.>> Produktnummern für BM1: 8744501086, 8748300289, 87472071490, 8748300370> (kleiner chip)> BM2: 8748300379, 8748300347>> Das würde ja dann auch dazu passen dass nicht alle BM2 funktionieren.> Nur die, die in Wirklichkeit BM1 sind.
Das halte ich nicht für korrekt. Zum einen: Warum sollte jemand ein BM1
als BM2 verkaufen, wenn er für ein BM1 mehr erlösen könnte? (OK, Fehler
passieren; ist aber nicht unbedingt die Regel).
Zum anderen: Die beiliegende Bedienungsanleitung war für BM2, und die
Abbildungen passen...
Würde behaupten, dass da jemand schlicht und ergreifend gemerkt hat,
dass das Design von BMx alt nicht optimal war, eine neue HW-Revision
gemacht hat und dann eben einen ausreichend potenten Chip genommen hat,
der beides abdecken kann. Dann wurde nach und nach die SW so angepaßt,
dass die selbständig erkennen kann, welche Funktion gewünscht ist... Bei
der Bestückung hat man dann halt "Einheitsware" aufgebaut, warum auch
immer, vielleicht, um die intern vorhandenen Spannungspegel besser im
Griff zu haben.
(Es ist aber nach wie vor komisch, dass mein MBx-alt nur ca. 15V
liefert, und das BMx neu eben neuerdings 30V. Beides außerhalb der
spec...
Es gibt aber BM2 mit grossem Chip auch mit den BM2'er Produktnummern -
z.b. https://www.ebay.de/itm/185128652217. Ich denke es ist möglich dass
die HW identisch ist aber die Funktion über spezielle Firmware
selektiert wird. Man siehts an den firmware Sockeln und den aufgeklebten
letzten drei Ziffern der Produktnummer.
Solange wir kein Beispiel eines BM2 mit großem Chip und BM2
Produktnummer haben, welcher nachgewiesenerweise als BM1 funktioniert,
würde ich auch die boards mit grossem Chip nur mit den BM1
Produktnummern kaufen.
Hab mir gestern einen 8748300289 mit grossem Chip gekauft (BM1 oder 2
nicht näher bestimmt). Bei dem bin ich relativ optimistisch.
Mein Eindruck ist dass der 8748300289 mit grossem Chip derjenige ist der
am häufigsten ohne nähere Kennzeichnung als BM1 oder 2 verkauft wird.
Möglicherweise ists eine Spezialität dessen FW dass er in beiden
Funktionen verwendet werden kann.
Jörg R. schrieb:> (Es ist aber nach wie vor komisch, dass mein MBx-alt nur ca. 15V> liefert, und das BMx neu eben neuerdings 30V. Beides außerhalb der> spec...
Ich hab in irgendeiner Junkers Anleitung gelesen dass man das Bus Modul
ersetzen soll wenn die gelieferte Spannung nicht im Referenzbereich ist.
Scheint also ein häufiges Problem zu sein. Leider finde ich die Quelle
gerade nicht mehr.
Joe Lucid schrieb:> Jörg R. schrieb:>> (Es ist aber nach wie vor komisch, dass mein MBx-alt nur ca. 15V>> liefert, und das BMx neu eben neuerdings 30V. Beides außerhalb der>> spec...>> Ich hab in irgendeiner Junkers Anleitung gelesen dass man das Bus Modul> ersetzen soll wenn die gelieferte Spannung nicht im Referenzbereich ist.> Scheint also ein häufiges Problem zu sein. Leider finde ich die Quelle> gerade nicht mehr.
Hier:
https://www.heizungfehlermeldung.de/fehler.php?merk=6&ketel=89&storing=2471&subcode=0
Hallo,
angesteckt von diesen ganzen Spekulationen, die hier neuerdings
vertreten werden, habe ich mir mal "ein" !!Verkäuferbild BM2 (kleine
Bestückung)!! genauer angeschaut.
Alle Bezeichnungen auf dieser Platine waren identisch mit meiner BM1 nur
der Klebestreifen war halt BM2. Ich habe nicht ein BOSCH Junkers
Verzeichnis, Dokument gefunden das mehr als 2 Platinen darlegt für beide
Versionen.
Man kann am "sichersten" davon ausgehen das Bosch oder Auftragsfirmen
auch vor 20 Jahren den Entwicklungsstandard eingehalten hat und nicht so
ein durcheinander produziert haben.
Letztlich nochmals auf den HW_Stand des angeblichen "BM2 (kleine
Bestückung)". Warum sollte ein Kaskaden_Modul mit einer Versorgung des
TAxxx versehenen werden und Led's weggelassen werden, vielleicht so
verständlich.
Es geht in der Entwicklung, Herstellung und dem Verkauf nicht um 100te
von Euros sondern um Cent Beträge oder damals Pfennige.
@Versorgungsspannung am BM1 liegt bei max. 24V die Versorgung des TAxxx
hingegen bei 17-24V (Ta250; an gesteckt) dies liegt an der Stromquelle
(eine Art Sicherung) auf dem BM1 (LM317).
30V....eine höhere Spannung als 24V beinhaltet doch automatisch das vor
dem Stecker SK1 der defekt liegt. --> Spannungsversorgung auf der
Hauptplatine.
evtl. mal den Wechselstromanteil messen /belastet/unbelastet/??.
@Joe
warum Du noch immer nicht einfachsten Weg gehen willst...?????? Du
verrennst Dich.
Peter* schrieb:> warum Du noch immer nicht einfachsten Weg gehen willst...?????? Du> verrennst Dich.
Na mach ich doch. Deswegen habe ich ja jetzt den 8748300289 gekauft.
Einen Versuch war es wert mit dem BM2 mit kleinem Chip. Aber bei diesen
Temperaturen kann ich einfach nicht längere Tests fahren ohne mir hier
eine Ehekrise einzufahren.
Hallo,
kleine Korrektur,
Peter* schrieb:> 30V....eine höhere Spannung als 24V beinhaltet doch automatisch das vor> dem Stecker SK1 der defekt liegt. --> Spannungsversorgung auf der> Hauptplatine.
es muss natürlich ST1 heißen.
Joe Lucid schrieb:> Wenn man es durchspielt merkt man schnell wie sich die Punkte> widersprechen: bringt man den VL auf maximale Temp um ein Zimmer zu> boosten, so wird es überall sonst wärmer - bis die Thermostate merken> dass der Vorlauf heiss geworden ist. Es müssen also die Thermostate die> VL Temp kennen, um antizipierend gegenzusteuern.
Hab heute nacht mal gemessen wie gross dieses Problem ist.
Heizkörperventile sind nachts auf 16 C gestellt, VL Temp Absenkung von
20 C nachts. Temperatur fällt schön auf 16 C - kein Problem. Aber wenn
die Heizung wieder anspringt überschiesst die Zimmertemperatur auf 18.3
C - miserable Regelleistung.
Wenn die Ventilregelung nicht die VL Temp kennt ist es nicht möglich
eine konstante Temperatur einzuregeln.
Das zweite Problem mit der Nachtabsenkung ist die Temperatur der Möbel,
Fussboden etc im Raum. Die folgt der Zimmertemperatur mit Verzögerung
und morgens fühlt es sich deswegen kälter an die Lufttemperatur. Eine
gute Steuerung würde das kompensieren, indem es die aktuelle Temperatur
der trägen Massen im Zimmer modelliert und eine konstante gefühlte
Temperatur liefert, indem die Lufttemperatur erhöht wird, bis die trägen
Massen auf Zieltemperatur aufgeheizt sind.
Das bedeutet natürlich wiederum mehr Energie als sonst, so dass die
Ersparnisse der Nachtabsenkung teilweise aufgehoben werden. Es folgt,
dass die eigentlichen Ersparnisse der Nachtabsenkung zu den Zeiten
eingefahren werden, wenn die Zielabsenkungstemperatur erreicht ist und
konstant gehalten wird.
Hab gestern um 19:00 mein Büro auf 16 C gestellt und der Fall von 20 auf
16C dauerte ca 5h - schon die Grössenordnung der Nachtabsenkung von
23:30 - 5:30. Man kann ableiten, dass komplette Absenkung mit Heizen bei
Bedarf viel, viel mehr bringt als Nachabsenkung, die hier wahrscheinlich
nur auf ca 18 grad erfolgen dürfte um überhaupt was zu sparen -
jedenfalls bei gleichem Komfort über Ausgleich der subjektiven Kühlung
über träge Massen durch höhere Lufttemperaturen.
Das coole an einer integrierten Steuerung wird sein, dass die träge
Masse jeden Raumes automatisch bestimmt werden kann, sowie die
durchschnittlichen Nutzungsintervalle. Damit kann die optimale
Absenktemperatur automatisch gewählt werden.
Hier spielt natürlich auch die Aussentemperatur zur Abwesenheit eine
grosse Rolle: ist es z.b. nachts 10 C kälter als tagsüber, so spart die
Absenkung nachts deutlich mehr ein als bei konstanten
Aussentemperaturen. Auch das kann man über Wettervorhersage voraussehen
und bei der Wahl der Absenktemperatur berücksichtigen.
Wenn man sich diesen Chart ansieht, wird klar dass die Aussentemperatur
natürlich der Sonneneinstrahlung folgt. Die grössten
Einsparungspotentiale liegen also in den frühen Morgenstunden. Das
Wohnzimmer nur von Mittags bis Mitternacht zu heizen sollte eine massive
Einsparung bedeuten. Und zumindest in der Woche sollte man vor mittags
auch nicht "wohnen" :).
Dave G. schrieb:> Ich habe die Heizleistung meiner Therme auf das absolute Minimum> reduziert, dadurch braucht diese auf Sparflamme deutlich länger um die> Energie zuzuführen, benötigt aber eine deutlich geringere VLT um die> Räume aufzuheizen, da jetzt ein konstanter(er) Energiestrom an den> Heizflächen ankommt.
Da ich ja auf die Lieferung meines BM warte, habe ich mir dieses
Wochenende mal angeschaut, was die Therme so macht. Ich hatte einen
relativ hohen Vorlauf um on demand hochheizen zu können und das Ding
taktete in einem durch.
Dein Kommentar deckt sich mit meinen Erfahrungen, wenn es auch auf den
ersten Blick absurd erscheint: eine höhere durchschnittliche VL Temp
sollte natürlich zu besserem Heizen führen, tut es aber nicht unbedingt.
Die Therme springt nur wild an und aus.
Ich denke der Hintergrund ist folgender: bei höherer VL Temp stellen
sich die Ventile weitgehend zu und so zirkuliert nur wenig Wasser durch
den Heizung/Therme Kreislauf. Das meiste Volumen zirkuliert durch den
internen Bypass in der Therme. Letzteres heizt sich natürlich schnell
massiv auf, was die Therme dann ausschaltet - bevor die Heizkörper viel
von dem warmen Wasser sehen.
Daher sollte die Steuerung die Vorlauftemperatur so steuern, dass die
Ventile möglichst weit offen sind. Mit der Heizkurve lässt sich einiges
machen, aber der Clou auf den ich gekommen um das Problem ohne eigene
Steuerung anzugehen ist in Zimmern mit zwei Heizkörpern ein Ventil
komplett offen zu stellen und das andere alleine steuern zu lassen. So
ist auch in Zeiten in denen die Thermostate die Heizkörper zu machen
wollen zumindest ein guter Grundkreislauf gegeben.
Habe also dazu die Heizkurve sehr weit runtergedreht und habe jetzt ein
viel, viel gutmütigeres Verhalten.
Nach der Erkenntnis, dass die gefühlte Temperatur (Strahlungstemp +
Lufttemp) / 2 ist und ich (noch) keine Steuerung habe, die das
berücksichtigt, hab ich die Nachtabsenkung mal ganz raus genommen.
Es ist erstaunlich wie viel besser sich das anfühlt. Hab die
Zieltemperatur jetzt auf 19 C runtergefahren und egal ob das Thermometer
auf Möbeln steht oder in der Luft hängt - ich bekomme 19 C. Und es fühlt
sich viel wärmer und angenehmer an als 20 C vorher.
Einsparpotential ist allerdings schon vorhanden. Die Wärmeleitung nach
draussen ist durch die durchschnittliche Aussenflächentemperatur
bestimmt. Und wenn man nachts (oder bei Nichtnutzung) absenkt ist diese
natürlich deutlich geringer selbst wenn die gleiche gefühlte Temperatur
durch höhere Lufttemperatur eingestellt wird.
Zu viel in der Richtung kann man aber nicht machen, weil der Komfort
darunter leidet.
Peter* schrieb:> @Versorgungsspannung am BM1 liegt bei max. 24V die Versorgung des TAxxx> hingegen bei 17-24V (Ta250; an gesteckt) dies liegt an der Stromquelle> (eine Art Sicherung) auf dem BM1 (LM317).>> 30V....eine höhere Spannung als 24V beinhaltet doch automatisch das vor> dem Stecker SK1 der defekt liegt. --> Spannungsversorgung auf der> Hauptplatine.> evtl. mal den Wechselstromanteil messen /belastet/unbelastet/??.
Danke für den Hinweis. Hatte bisher immer nur ohne laufendes BMx am
Stecker gemessen, und da lagen dann auch tatsächlich die 24V an. Das
schaute also OK aus, ABER: Mit angestecktem BM2 liegt auch an diesem
Stecker dann deutlich mehr an als die Spec sagt (um die 28V), und der
Versuch, die Wechselspannung dort zu messen zeigte um die 58V an. Weiß
zwar nicht, wie genau diese Messung ist (billiges Multimeter), aber
vermutlich ist es in der Tat so, dass der Fehler doch auf der
Hauptplatine zu suchen ist.
Stellt sich die Frage, wie am besten weiter machen. Mal (bei moderateren
Außentemperaturen) das MB rausholen und die Nummer abpinnen ist sicher
eine gute Idee, vielleicht bekomme ich ja was passendes gebrauchtes
(stellt sich dann nur die Frage, ob das besser ist).
Aber immerhin könnte man dann ggf. einen Reparaturversuch starten.
Vielleicht ist es auch "nur" ein ausgetrockneter Kondensator... (Falls
jemand eine Idee hat beim Blicken auf eine ausgebaute Hauptplatine:
Gerne her damit, ich bin fachlich nicht qualifiziert...).
Hallo,
in der Tat solltest Du ein Messgerät verwenden das auch richtig misst!!
Wenn am Stecker ST1 bzw. ST9 eine Spannung von 24 V anliegt ist das ok,
aber die Logik verfällst Dich wenn bei aufgestecktem Stecker BM2 die
Spannung steigt.
Woher soll die Spannung kommen, leitest Du die über CAN-Bus ein. (3te
Leitung GND---> Masseversatz)
Die Spannungsversorgung auf der Platine regelt hier maximal die 5,0 V
Versorgung und BM1 TAxxx auch ~BM2 (!! besitze kein BM2, keines der
angeblichen beiden Bestückungsvarianten und werde mir auch keins kaufen
!!) .
28V werden die 78L05 noch verkraften können, aber ~58V ganz sicher
nicht!! hier würde nichts mehr laufen.
Mein Vorschlag, ein besseres Messgerät leihen und die richtigen
Messpunkte suchen ST1(1,3 VB<->GND) oder ST9(Spiegelverkehr) und
nochmals messen. "Vorsichtig"
Deine Therme läuft doch scheinbar... sonst gar nichts, Sommer abwarten
immer besser.
Vor eineinhalb Jahren hatte ich die Platine TA211 vermessen und habe
beim schalten der Gasarmatur erhebliche Störspitzen gemessen.
Ich glaube das dies der Killer der Hauptplatinen ist, aber nur eine
Vermutung.
Denke an deine Eigenverantwortung!!
Ich bin mir bei dem Thema Nachtabsenkung auch noch nicht vollends einig.
Ich denke es ist besser die Thermostate per Zeitplan auf 17°
einzustellen und die Heizung entsprechend laufen zu lassen, statt
komplett abzuschalten. So wird auch noch die Restwärme im Kreislauf für
eine gewisse Zeit benutzt. Hätt ich nur eine gute Möglichkeit den
Gaszähler dabei zu betrachten... aber geht bei mir leider so garnicht.
Mit meiner Steuerung sollte das absenken auf 17° bewirken, dass eine VLT
von vielleicht maximal 30° resultiert und verhindert, dass das Delta zum
morgentlichen aufheizen zu groß wird. Ich weiß nur nicht, ob man dadurch
etwas spart oder das Gegenteil bewirkt.
//EDIT: Ich deaktiviere das einfach mal für eine Nacht und schaue, was
so passiert.
Inzwischen ist meine Meinung wie gesagt dass die potentielle Ersparnis
bei echter Nachtabsenkung komplett aus der Reduzierung der
durchschnittlichen Temperatur der Wände, Decken, Böden etc resultiert.
Dem gegenüber steht der Mehrverbrauch durch höhere Vorlauftemperatur
beim Aufheizen.
Da die Aussenflächen und Möbel mit Nachtabsenkung durchschnittlich
kälter sind als ohne, fühlt sich eine feste Zimmertemperatur kälter an.
Der Körper erfährt nicht nur die Abkühlung durch die Luft, sondern
zusätzlich die Wärmestrahlung von Aussenflächen und Möbeln - und wenn
diese kälter sind als die Luft so wird dem Körper zusätzlich Wärme
entzogen.
Deswegen ist sicher ein signifikanter Teil der Einsparung bei
traditioneller Nachtabsenkung einfach in der niedrigeren operativen
Temperatur (= 1/2 * (Strahlungstemp + Lufttemp) gegeben. Man toleriert
über den Tag, aber besonders morgens, eine kältere operative Temperatur.
Das ist natürlich gemogelt. Ich denke man müsste die eingeregelte
Temperatur entsprechend kompensieren.
Je grösser die Absenkung desto mehr können sich Flächen und Möbel
entsprechend ihrer thermischen Masse und ihrer Wärmeleitung
unterschiedlich stark abkühlen. Das hab ich bei mir stark beobachtet -
es ist nicht angenehm und Teile des Zimmers werden unangenehm kalt.
Hier möchte ich aber noch mehr experimentieren. Wir haben einen riesigen
Wohnbereich, der am teuersten zu heizen ist, aber eigentlich erst an
Nachmittag gebraucht wird. Man könnte den komplett auskühlen lasst und
dann ab Mittag deutlich wärmer als Zieltemperatur aufheizen, so dass
sich Kaltflächen aufwärmen können. Und dann ab 14:00 normal weiter
heizen, mit etwas erhöhter Temperatur wg immer noch kühlerer Flächen
und Möbel. Ob dass aber dann noch was spart - wer weiss.
Bei Deinen Charts oben fiel mir auf wie häufig die Therme taktet (ca
alle 6 Minuten?) - so wie das bei mir war. Nachdem ich jetzt viele
Ventile annähern komplett offen habe, die Taktsperre ausgeschaltet und
statt dessen 30 C Schaltdifferenz eingestellt habe, taktet mein Therme
ca alle 11 Minuten. Dabei sieht man, dass sie am unteren Ende auf ein
echtes Abkühlen des Nachlaufs wartet und sie heizt längere Zeit am
oberen Ende. Insgesamt scheint mir das positiv zu sein.
Ich denke man muss die Vorlauftemperatur als Steuergrösse nehmen und als
Steuerziel die Ventile möglichst weit zu öffnen - dabei von Deinem
Flurventil abgesehen.
Die 10kw minimale Leistung die diese Thermen erzeugen brauchen einfach
eine Menge Durchfluss um bei Erhitzung des Nachlaufs abzuschalten (statt
der internen Soße).
Gut wäre auch den hydraulischen Abgleich über die Ventile zu machen - so
dass man auch mit nur einem geöffneten Ventil guten Durchfluss bekommt.
Falls das geht.
Für das Boosten eines Raumes ist das wohl die einzige Möglichkeit ein
Takten der Therme zu vermeiden.
Das mit der Taktsperre und Delta muss ich auch mal ausprobieren. Vorher
taktete die Heizung übrigens auf jeden Fall alle 3 Minuten, blieb der
Brenner für ein paar Sekunden an und ging dann wieder aus.
Hallo,
...ernsthaft?
Man sollte sich doch noch in der Realität bewegen, wenn schon nicht mehr
im Thema..?
Verschachtelte Regelkreise, der dynamischer Abgleich über
Thermostatventile mit einer Heizung die vielleicht 10-20 Jahre hinter
sich hat. Vorlauftemperaturreduzierung und gleichzeitige
Taktzeiterhöhung und das soll noch funktionieren.
Dave's Gedanken und dessen Gebäude kann ich noch in Einklang bringen,
aber...
Sorry, ist nicht böse gemeint.
Aber ich denke auch an Leute die mitlesen oder die vielleicht den
Schritt ebenfalls wagen mit Ihrer alten Heizung zu kommunizieren und von
solchen nicht nachvollziehbaren Gedankenspielereien abgeschreckt werden.
Danke
Naja gut irgendwann wird der Thread hier sowieso so lang werden, dass
Informationen unweigerlich verloren gehen, weil niemand Lust hat sich
hunderte Beiträge durchzulesen. Daher würde ich auch gerne irgendwie die
Erkenntnisse (also die fundierten zumindest) in ein Wiki auf Github oder
so schreiben, damit erstens nichts verloren geht und zweitens Struktur
drin ist.
Was haltet ihr davon?
Hier sind übrigens noch meine Erkenntnisse von gestern auf heute bzgl.
Nachtabsenkung an/aus.
Ich lass das einfach mal kommentarlos stehen und frage euch nach eurer
unverfälschten Meinung dazu.
Hallo,
was ich sehe, eine 3/4 Stunde weniger aufheizen zu ~16 kurze Starts in
der Nacht.
Nehme an im ersten oberen Bild ist die Pumpe auch nicht aktiv.
Der Gaszähler könnte natürlich hier das wirkliche Ergebnis erbringen.
Für dein Gebäude finde ich sieht es gut aus mit aktiver Heizung.
Lese auch noch am Morgen zur gleichen Zeit immer den Zählerstand ab.
Projekt Gaszähler mit Mouse_Sensor liegt noch auf Eis, keine Zeit.
Dave G. schrieb:> Hier sind übrigens noch meine Erkenntnisse von gestern auf heute> bzgl.> Nachtabsenkung an/aus.
Man kann sehen, dass der Raum tiefer auskühlt mit Nachtabsenkung - die
Therme läuft noch mittags wesentlich länger, da nicht nur der
Wärmeverlust sondern auch das Wiederaufheizen der trägen Massen erfolgt
-> sollte sich heute weniger kalt angefühlt haben. Aber so gross ist der
Unterschied nicht, da Du ja über die Ventile indirekt absenkst. Ich
heize zur Zeit mit einer konstanten Zimmertemperatur durch - aber BM
heute angekommen. Leider bin ich jetzt erstmal mit anderem Kram
beschäftigt. Bäh.
Peter* schrieb:> Aber ich denke auch an Leute die mitlesen oder die vielleicht den> Schritt ebenfalls wagen mit Ihrer alten Heizung zu kommunizieren und von> solchen nicht nachvollziehbaren Gedankenspielereien abgeschreckt werden.
Ach was, da mach Dir mal keine Sorge. Ein bisschen Brain-Storming
inspiriert oft! Und wo Du so häufig sagtest: "warum so kompliziert, häng
doch einfach eine TA 270 dran" - das ist der Grund: Wenn ich mir die
Mühe mache, meine Heizung neu zu steuern dann möchte ich auch die
Grenzen austesten.
Ich finde die haustechnikdialog.de Foren unterhaltsam. Da prallen Welten
aufeinander - Heizungstechniker und Tech-Menschen. Und zwar genau weil
das übliche Setup von überdimensionierter Therme und abwürgenden
Digital-Thermostaten (wie bei Dave und mir) ein prinzipielles Problem
darstellt. Die haben sogar einem Namen für die Konstellation:
http://www.bosy-online.de/Kuhschwanzheizung.htm.
Das ist schade - denn im Prinzip könnte man viele spezielle Probleme
dieser Konstellation mit Digital-Thermostaten viel besser lösen. Also
offen bleiben.
Das mit dem Kuhschwanz kenne ich sogar. Wenn man versucht nur durch
digitale Raumthermostate das System einzuregeln, dabei aber nicht den
Kessel an die Gegebenheiten einstellt, dann geht das schief. Da wir hier
versuchen eine total alte aber immernoch perfekt funktionierende
Regeltechnik ins moderne Zeitalter des Smarthomes zu heben, entstehen da
sicher tolle Situationen. Die meisten Heizungstechniker werden das was
wir hier machen als totalen Quatsch abstempeln aber ich habe bereits
eine Einsparung erfahren, also ist das was ich hier mache besser als das
was die Heizung bis dato alleine gemacht hatte.
Meiner Einschätzung nach macht es allerdings kaum einen Unterschied die
Nachtabsenkung abzuschalten. Die Temperaturdifferenz kommt ganz klar von
der Außentemperatur, die nun weit über 0° liegt. Ich werde das nun
weiter beobachten. Wenn die Temperaturen wieder ins negative fallen,
werde ich weitere Vergleichsdiagramme ziehen.
Übrigens wurde ich auf einen Bug aufmerksam gemacht. Irgendwo beim
Refactoring ist da ein INT zu einem UINT geworden. Die Außentemperatur
ist jetzt stets positiv. Das werde ich noch fix beheben.
Dave G. schrieb:> Meiner Einschätzung nach macht es allerdings kaum einen Unterschied die> Nachtabsenkung abzuschalten. Die Temperaturdifferenz kommt ganz klar von> der Außentemperatur, die nun weit über 0° liegt. Ich werde das nun> weiter beobachten. Wenn die Temperaturen wieder ins negative fallen,> werde ich weitere Vergleichsdiagramme ziehen.
Ich habe eine Wochenendhütte, die ich diesen Sommer mit Solar und einer
Klimaanlage ausgestattet habe. Habe da eine Gastherme aber kann die
Klimaanlage auch zum heizen verwenden. In der Woche heize ich nicht -
Temperatur geht also vielleicht 10 C runter.
Folgendes ist mir aufgefallen: Die Klimaanlage läuft auf 100% und die
Temperatur steigt sehr langsam - über viele Stunden. Aber Sonntag, wenn
die Hütte aufgeheizt ist, fängt sie an zu Takten wenn sie nur noch die
Temperatur hält. Und die AC kann auf 25% drosseln.
Mit anderen Worten: das Aufheizen der trägen Massen kostet viel mehr,
als ein Haus bei konstanter Hitze als Verlust an die Aussenwelt abgibt.
Du kannst es Dir auch an Deinem Haus klarmachen: bei tiefen Temperaturen
macht für den Energieaustausch nach draussen keinen so grossen
Unterschied ob die Innentemperatur bei 21 oder 17 C liegt. Wenn Du 8h
die Heizung aus hast dann musst Du am nächsten Tag zusätzlich zum
normalen heizen die Energie zuführen um die Massen wieder aufzuheizen.
Und wir wissen wieviel das ist: Die normale Heizlast über 8h, die Du
unterdrückt hast. Also zb fahre die Heizung doppelt sich stark wie sonst
für 8h.
Aber die gute Nachricht ist - das ist nicht nötig. Man kann weniger
heizen und die Massen bei tieferen Durchschnittstemperaturen lassen
solange die Luft warm genug ist. Und da der Energietausch mit der
Aussenwelt proportional zur Differenz zwischen Aussentemperatur und
Temperatur der Wände, Decken usw ist reduziert das die Heizlast.
Gute Nachrichten: bin endlich dazu gekommen den BM? (8748300289) mit
Dave's Firmware zu installieren und alles läuft tadellos!
Also ein weiterer Beleg für die Hypothese dass Bus Module mit der
Produktnummer 8748300289 unabhängig von der Kennzeichnung als BM1 mit
analogem Aussentemperaturfühler an AF funktionieren.
Hab noch eine neue Idee für Installationen, die (wie ich noch) keine
drahtlosen Heizkörperthermostate habe: regele die Vorlauftemperatur so
dass sich die Taktungsfrequenz auf einem vernünftigen Niveau einstellt.
Insoweit die Taktungsfrequenz als Indikator für die Ventilstellung
gesehen werden kann, könnte das vernünftige Resultate bringen -
jedenfalls ohne Nachtabsenkung.
Tja - nur ignoriert die Therme die Vorlauftemperatur, die ich ihr sende.
Ich bekomme keinen A8 - aber sie taktet immer um die manuell
eingestellte maximal VT. Ideen?
So - jetzt funktioniert es. Hab noch 0x250 = 1 zu den zyklisch
gesendeten Werten dazugefügt. Das scheint den Erfolg gebracht zu haben.
Vorlauf temp optimierte Taktperiode von 10 Minuten scheint auch ganz gut
hinzuhauen. Aber jetzt dann mal auf zur ernsthaften Steuerung.
Angehängt ist die erste Nacht Probelauf meiner raumgeführten
Vorlauftemperatursteuerung für den Wohnbereich. Ich benutze zwei
Thermometer - eins auf dem Couchtisch was sehr träge reagiert und eins
hängt in der Luft und reagiert schneller. Orange ist der Mittelwert
zwischen beiden, der die gefühlte Temperatur annähert. Blau ist die
Vorlauftemperatur. Beide Heizkörperventile sind komplett offen.
Maximalabweichung über die Nacht: 0.05 C. Durchschnittliche Taktperiode
ist ca 15 Minuten. So hatte ich mir das ganze vorgestellt.
Hallo Leute,
heute ist mein Mini-PC, mit dem ich mittels eines Lawicel CANUSB am BUS
meiner Heizungsanlage gehorcht und per MQTT an meinen HomeAssistant
geschickt habe, bedauernswerterweise abgeraucht.
Hier (Beitrag "Re: Junkers CAN-Bus Protokoll") wurde
erwähnt, dass dies einfacher mit einem Arduino und noch ein paar anderen
Komponenten einfacher und stromsparender geht.
Wärt ihr bitte so freundlich und würdet mir erklären, was ich genau
brauche
und wie ich es machen muss?
Ich habe z.B. keine Ahnung was ein NiRen ist. :-/
Das wäre super nett von euch.
Gruß,
Bernd R
Hallo,
fangen wir hinten an "NiRen". Hier ein Link.
https://www.electronicshub.org/arduino-mcp2515-can-bus-tutorial/
wie immer mein Rat:
a) CANdiy-Shield-V2-CAN-Bus-Shield --Watterott
nun das zweite Problem ist, wie bindest Du diese Information in dein
bestehendes System ein.
dann wirst Du evtl. den Arduino durch den ESP32 oder ESP8266 ersetzen
mit geringer SW oder HW Anpassungen.
b) ESP32 NodeMCU D1 R32 WLAN Entwicklungsboard mit CH340G und WiFi +
Bluetooth IoT mit Mikro USB kompatibel mit Arduino; Anpassung des SPI an
CANdiy Shield evtl. über ICSP.
Probleme sind hier beschrieben; kein Abschluss CAN auf der Platine, muss
gehen.
Hallo,
nun das sollte deine Entscheidung sein, was Du kaufst, es ist nur ein
Rat von mir. Was halt bei Dir passt.
Die SW Anpassung, nun ...die wirst Du nur alleine bewältigen können.
Von ESP32 (WLAN...) auf MQTT bzw. dein System bzw. Dave's Programm.
Die Can-Bus Platine ist für Arduino Uno bis Due vorgesehen die Anbindung
setzt die ICSP Schnittstelle voraus.
Die ESP32 Platine hat die nicht, Du musst über die ESP SPI_Pinne gehen
an CAN_Bus_ICSP. Löten oder stecken, lass mich nicht lügen, glaube nur 3
Leitungen.
SW für Can-bus ist hier oder bei Dave behandelt worden.
Also, ich folge gerne deinem Rat, weil ich nämlich keinen Plan habe was
ich sonst machen soll und habe die beiden genannten Komponenten jetzt
gekauft.
Peter* schrieb:> Du musst über die ESP SPI_Pinne gehen an CAN_Bus_ICSP. Löten oder> stecken, lass mich nicht lügen, glaube nur 3 Leitungen.
Gibt es dazu irgendwo eine bebilderte Anleitung, bzw. geht es ein
bisschen genauer für Idioten wie mich. ;-)
Wie geht es dann weiter.
Ich brauche eine Anleitung.
LG,
Bernd
Hallo,
oh Mann..., hoffe Du hast ein Lötkolben oder kennst ein mit Lötkolben.
Platine CAN-Bus Draufsicht Lan Stecker links:
Level_Jumper mit SMD_Brücke von 5 V auf 3V3 um löten. Es ist etwas
Feinmotorig gefragt.
Einlöten der Jumper JP1...JP3.
Arduino Steckerleisten einlöten,
wenn Du die Platine nicht noch für andere "Arduino" versuche benutzen
willst...(Bild), brauchst Du den ICSP_Stecker nur einlöten, wenn Du
keine separaten 3 Pinhead's (SPI-Schnittstelle) hast und "dann" auf der
Bestückungsseite statt auf der Bottom_Seite.
Als letztes wird "der" oder die Lan_Stecker aufgelötet.(Bild) Man
braucht normal nur ein aber...
Halbdefektes Lan-Kabel defekten Stecker abschneiden und...
Kabelbelegung(GND nicht vergessen)) findest Du bei Watterott.
Solltest Du das anständig machen wollen kannst die nachfolgenden
Leitungen auch auf der Can-Bus Platine, schön mit Draht verlöten.
!! ICSP Leitungen auf Can-Bus Platine: (Bild)
SPI_Schnittstelle:
Pin_SCK an PIN13 (braun);
Pin_MOSI an Pin11(rot);
Pin_MISO an Pin12(blau),
Achtung!! Pin11...13 sind abhängig von der Wahl der Schnittstelle in der
SW
Natürlich alles ohne Gewähr!! Eigenverantwortung usw.
Hallo und ich danke dir sehr für die Anleitung.
Peter* schrieb:> oh Mann..., hoffe Du hast ein Lötkolben oder kennst ein mit Lötkolben.
Selbstverständlich bin ich nicht ganz unbeleckt, was
Elektronikbastelleien und Löten angeht, aber mit Arduino, bzw. dessen
Derivate habe ich mich bisher noch nicht auseinandergesetzt.
Peter* schrieb:> Level_Jumper mit SMD_Brücke von 5 V auf 3V3 um löten. Es ist etwas> Feinmotorig gefragt.
Kein Problem, ich hoffe nur, dass ich die besagte Brücke erkenne, wenn
das Board vor mir liegt. ;-)
Peter* schrieb:> Halbdefektes Lan-Kabel defekten Stecker abschneiden und...> Kabelbelegung(GND nicht vergessen)) findest Du bei Watterott.
Nicht nötig, ich crimpe einfach einen RJ45 Stecker auf die vorhandene
Busleitung. ;-)
Peter* schrieb:> Achtung!! Pin11...13 sind abhängig von der Wahl der Schnittstelle in der> SW
SW heißt vermutlich Software...
Wobei wir beim Thema wären:
Wie geht es dann mit der SW weiter?
Gibt es irgendwo ein Tutorial?
Welche SW benötige ich?
Bitte bedenke, dass ich vorrangig das Ding zum Laufen bekommen möchte
und keinen Grundlagenkurs im Umgang mit Arduinos brauche.
Das ist etwas womit ich mich vielleicht im Nachgang beschäftige.
Peter* schrieb:> Natürlich alles ohne Gewähr!! Eigenverantwortung usw.
Ist klar, dennoch bin ich bester Hoffnung, dass deine Anleitung korrekt
ist.
LG,
Bernd
Hallo,
Link
https://github.com/watterott/CANdiy-Shield/blob/master/hardware/CANdiy-Shield_v21.pdf
dort findest Du auch Logic_Level_JP. Bild etwas unscharf.
SW [nur CAN-Bus Kommunikation] findest Du dort auch.
ACAN2515 und MCP_Can ist das was an einfachsten funktioniert.
Dave's Programm findest Du hier unter Github.
Netzteilspannung sollte nicht höher als 9V sein. GND ist wichtig!! nicht
vergessen auch bei CAN-Bus.
Lesen vorletztes und letztes Jahr wichtig!!!
Habe gesehen inzwischen gibt es die V2.1 Version, hoffe Du hast die
bestellt.
Hinweis: !!BM1!! und BM2! sind sehr teuer, unverschämt teuer.
Peter* schrieb:> Lesen vorletztes und letztes Jahr wichtig!!!>
Irgendwas spezielles was du meinst?
Lese eigentlich immer mit.
> Habe gesehen inzwischen gibt es die V2.1 Version, hoffe Du hast die> bestellt.
Bestellt v2, bekommen v2.1
Wo ist der Unterschied?
Was muss ich beachten?
> Hinweis: !!BM1!! und BM2! sind sehr teuer, unverschämt teuer.
Ist klar.
Verstehe den Hinweis nicht.
Gruß,
Bernd
Hallo,
mit lesen ist immer gut.... das wurde schon mal behandelt.
Ich meine der Treiber [FD] vom CAN-Bus wurde gewechselt, hat aber keine
Auswirkung direkt bei 10k.
Nun..., für 15 Jahre alte Hardware Unsummen zu bezahlen ist ein Unding.
...Du hast mitgelesen.... dann ist Dir das Problem doch bekannt. Fast
jeder hat hier schon Probleme gehabt und durch eigene Fehler oder ????
die BM1 gewechselt.
Einmal Überspannung , Masseversatz.....
Noch ein kleiner Hinweis zur Verkabelung (bzw. der Software) die SPI_Pin
Nr. sind nicht die Pin's des ESP_Platine bzw. zur Software.
static const byte MCP2515_SCK = 18 ; // SCK input of MCP2515
static const byte MCP2515_MOSI = 23 ; // SDI input of MCP2515
static const byte MCP2515_MISO = 19 ; // SDO output of MCP2515
static const byte MCP2515_CS = 5 ; // CS
Wie mitgeteilt zum erwähnten Aufbau.
Peter* schrieb:> Noch ein kleiner Hinweis zur Verkabelung (bzw. der Software) die SPI_Pin> Nr. sind nicht die Pin's des ESP_Platine bzw. zur Software.>> static const byte MCP2515_SCK = 18 ; // SCK input of MCP2515>> static const byte MCP2515_MOSI = 23 ; // SDI input of MCP2515>> static const byte MCP2515_MISO = 19 ; // SDO output of MCP2515>> static const byte MCP2515_CS = 5 ; // CS
Sondern?
Sorry, aber das klingt wie chinesisch für mich.
Hallo,
hast Du schon mal mit einem Arduino oder einem ESP32 herumgespielt??
Wenn nicht, dann solltest Du schnellstens damit anfangen ohne diese
Kenntnisse wirst Du hiermit scheitern
.... wie hast Du mit MQTT gearbeitet.
Wichtig für die SW:
Das ist ein Auszug aus der Definition vom ESP32 mit der SW ACAN2515.
Die Deklaration der SPI Schnittstelle zur Hardware. Pin 18,23,19,5 wird
bei diesem Aufbau benutzt.
Vielleicht meldet sich noch ein SW Spez. zur Hilfe.
Peter* schrieb:> hast Du schon mal mit einem Arduino oder einem ESP32 herumgespielt??
Nein
> Wenn nicht, dann solltest Du schnellstens damit anfangen ohne diese Kenntnisse
wirst Du hiermit scheitern
Wie gesagt, ich will das Ding jetzt primär erst einmal zum Laufen
bringen und mich im Anschluss damit auseinandersetzen.
Da es hier, dich eingeschlossen, Leute gibt, die das erfolgreich zum
Laufen gebracht haben, war und bin ich der Hoffnung, dass ich ordentlich
angeleitet werde, ohne dabei meine Heizung zu schrotten.
> .... wie hast Du mit MQTT gearbeitet.
Ich habe, wie bereits hier im Thread mehrfach erwähnt, einen kleinen
Linux-Rechner und lasse dort can2mqtt (https://github.com/c3re/can2mqtt)
laufen.
Auf meinem HomeAssistant (PI4) läuft dann der MQTT-Broker
> Vielleicht meldet sich noch ein SW Spez. zur Hilfe.
Ich habe auch bereits Dave um Hilfe gebeten, der hat aber offensichtlich
viel zu tun.
Hallo,
sorry, sehe das bitte als konstruktive Kritik.
aber die Definition von Hilfestellung sieht in meinen Augen etwas anders
aus, man muss es selber wollen und tun und nicht einfach einen Auftrag
vergeben.
> ... dass "ich ordentlich angeleitet" werde, ohne dabei meine Heizung zu> schrotten..... abgesehen von der Aussage des Satzes besteht die Gefahr immer.
Nun..., "Du" machst scheinbar keine Fehler mit Null_Wissen ! wenn Du nur
ordentlich angeleitet wirst?
Wissen vor lernen, wie geht das.
Zum Lernen braucht man Zeit und die Zeit willst Du "Dir" erstmal gar
nicht geben, sondern andere [wie gesagt Eigenverantwortung] sollen Dich
blind leiten!! und diese Zeit für Dich investieren "."
Löte die Can-Bus_Platine zusammen und mach Dich mit der Arduino IDE
vertraut.
Peter* schrieb:> sorry, sehe das bitte als konstruktive Kritik.
damit kann ich umgehen. ;-)
> aber die Definition von Hilfestellung sieht in meinen Augen etwas anders> aus, man muss es selber wollen und tun und nicht einfach einen Auftrag> vergeben.
offensichtlich hast du mich falsch verstanden.
Ich werde hier keine Fragen stellen, wie ich die Platine zusammen löten
muss oder das Ding flashen muss. Das werde ich mir schon anlesen.
Wahrscheinlich werden sich mir dabei die einen oder anderen kryptischen
Hinweise von dir erschließen.
Ich erwarte lediglich Hilfestellung dahingehend, dass ich hier poste wie
weit ich bin und dann frage, was ich als nächstes tun muss, um das Ding
erfolgreich in Betrieb zu nehmen ohne dabei meine Heizung zu schrotten.
Ich sehe nämlich keinen Sinn darin, Fehler, die bereits schon einmal von
sonstwem gemacht wurden, noch einmal zu machen, nur damit ich es "selbst
getan" habe.
Das ist in meinen Augen Schwachsinn.
>> Nun..., "Du" machst scheinbar keine Fehler mit Null_Wissen ! wenn Du nur> ordentlich angeleitet wirst?>> Wissen vor lernen, wie geht das.
Nun, es gibt Wissen und Wissen.
Ich brauche Wissen von denen, die genau das, was ich vorhabe und nicht
weiß wie es geht, schon erfolgreich hin bekommmen haben.
Was ist daran verwerflich und falsch?
> Zum Lernen braucht man Zeit und die Zeit willst Du "Dir" erstmal gar> nicht geben, sondern andere [wie gesagt Eigenverantwortung] sollen Dich> blind leiten!!
Es leuchtet mir eben einfach nicht ein, warum ich Zeit für "Experimente"
mit einem Arduino inverstieren soll, wenn ich doch genau weiß, was es am
Ende tun soll und ich weiß, das genau dieses Wissen hier im Forum
abzuschöpfen ist.
Zumal ich erst durch den Hinweis hier im Forum auf die Möglichkeit, das
mit einem Arduino zu machen, hingewiesen wurde.
> Löte die Can-Bus_Platine zusammen und mach Dich mit der Arduino IDE> vertraut.
Das werde ich tun.
Heute sind alle Teile mit der Post gekommen.
...und verstehe mich bitte nicht falsch:
Ich bin bereits sehr dankbar dafür, dass du dich überhaupt so weit mit
mir befasst hast und ich habe die Hoffnung, dass du die Lust an mir
nicht verlierst.
Ich verspreche auch ein gelehriger "Schüler" zu sein und keine Fragen zu
stellen, die ich mir nicht auch durch etwas lesen selbst erarbeiten
kann.
...aber gerade in der Hinsicht, dass die Junkers-Busmodule sehr fragil
und teuer sind, wünsche ich mir absolute Sicherheit, bevor ich das Teil
dann endgültig in Betrieb nehme.
In diesem Sinne melde ich mich wieder, wenn ich alles zusammengelötet,
den Jumper auf 3,3V umgelötet, die Verkabelung nach deinen Bildern
vorgenommen und Daves Software auf den Arduino geflasht habe.
Liebe Grüße,
Bernd
Hallo,
der Punkt wurde von mir gesetzt und damit ist die Sache erledigt.
Soweit mir bekannt ist hat Dave ACAN2515 benutzt und hier würde ich
raten nach der Fertigstellung einen Kommunikationstest auf unterster
Ebene zu starten. Ob Daten empfangen oder gesendet werden können. Da
gibt es Programme unter Github ACAN2515 und die Funktion vor dem
Anschluss an deiner Heizung sicherstellen.
Bei Dave's Programm bin ich leider bin nicht die Hilfe.
So, Platine ist zusammengelötet und gemäß deinen Anweisungen gejumpert
und verdrahtet.
Ich habe ein wenig mit Arduino IDE herumgespielt, habe aber das Problem,
dass ich mit den mitgelieferten Beispielen keinerlei Ausgaben bekomme.
Das Blinken der LED ging noch, aber beispielsweise der "WiFi-Scan" gibt
nichts aus.
@Dave:
Ich werde leider aus deiner Software nicht ganz schlau.
Muss ich da jetzt tatsächlich noch in PlatformIO einarbeiten?
@Peter:
Du sprachst den Masseversatz an, den ich (man) vermeiden soll.
Wie gehe ich da bei der Verkabelung am besten vor?
Laut Wetterott liegt an der RJ45-Buchse des CANdiy-Shield an Pin 3 und 7
jeweils Masse an.
Was kommt an Pin 8 (V+)
Muss ich beide benutzen?
Reicht einer?
Gruß,
Bernd
Hallo,
muss mich zeitlich bedingt etwas kurz halten.
Zum Bild:
Du musst die JP 1-3 einlöten die brauchst Du!
Wenn Du Dir den Schaltplan in Pdf anschaust, siehst Du warum. Du kannst
bzw. musst den GND Jumpern (JP3, Pin3,7)) bestücken
und wenn Du zufällig Vin (JP2, Pin8), ungefähr 9V Gleichstrom außerhalb
hast, kannst Du die auch freigeben. Mach es nicht, nicht notwendig.
Versorgung besser über Stecker oder USB.
JP1 ist der Abschlusswiderstand vielleicht ist der nötig für Test's oder
anderen Geräten außerhalb deiner Heizung.
Hast das Board "ESP32 DEV Module" eingestellt, richtige Port (COM)?
Welche Datei hast Du geladen.
Peter* schrieb:> hast du inzwischen Erfolg gehabt?
Konnte die Änderungen an der Platine noch nicht vornehmen.
Bin gerade beruflich etwas eingespannt.
Melde mich, wenn ich so weit bin.
Gruß,
Bernd
Peter* schrieb:> Hast das Board "ESP32 DEV Module" eingestellt, richtige Port (COM)?
Ich habe sowohl "ESP32 Dev Module", als auch "ESP32vn IoT Uno"
(letzteres wird in der Anleitung von az-delivery.de verwendet) -->
https://www.az-delivery.de/blogs/azdelivery-blog-fur-arduino-und-raspberry-pi/d1-r32
Der Port stimmt, das Hochladen zum Board funktioniert einwandfrei und
ohne Fehler.
Im Seriellen Monitor bekam ich zuerst nur kryptische Zeichen als
Ausgabe.
Erst als ich an der Übertragungsrate herumgespielt und diese auf 115200
baud eingestellt habe, bekam ich dann auch Klartext.
> Welche Datei hast Du geladen.
Was meinst du genau mit "Datei"?
Gruß,
Bernd
Bernd R. schrieb:> @Dave:> Ich werde leider aus deiner Software nicht ganz schlau.> Muss ich da jetzt tatsächlich noch in PlatformIO einarbeiten?
Eigentlich sollte das zwischenzeitlich auch ohne die PlatformIO gehen,
indem man die beiden bin mit dem esptoolkit hochlädt wie unter
https://github.com/Neuroquila-n8fall/JunkersControl#installation-quick-start
beschrieben. Dann muss/kann man eben die Konfigurationsdaten (als JSON
encodiert) über das web-Interface hochladen und vorher woanders
editieren.
Wenn noch ein anderer "Controller" (TA2xx) im Spiel ist, lauscht der ESP
prinzipiell nur mit.
Hallo,
unter Datei meinte ich eigentlich, welches Textprogramm (ACAN2515) Du
benutzt. Ja..., die Baudprobleme hatte ich mir schon gedacht.
Funktioniert jetzt das scannen?
Bei den Board_Einstellungen schreibt jeder etwas anders, es müssen aber
auch alle Port's funktionieren und ich meine ESP32vn IoT Uno ist dies
nicht der Fall.
Auf dem CAN-Bus Board sind zwei LED's, ich benutze die als Sende- bzw.
Empfangs_Led die unabhängig vom Can-Controller arbeiten, leider, da
funktionierten sie nicht.
Auszug Programm:
uint8_t Tx = 12; // Sende_LED_D03
uint8_t Rx = 14; // Empfangs_LED_D02
unter Setup:
pinMode(Tx, OUTPUT); digitalWrite(Tx, HIGH); // Ausgang; Tx_Led out,
pinMode(Rx, OUTPUT); digitalWrite(Rx, HIGH); // Ausgang; Rx_Led out,
Hast Du schon den Can-Bus bzw. Platine getestet?
Du schriebst Du hast noch einen USB Canbus zur Verfügung. Vielleicht
nutzt Du diesen zum testen mit der Karte. Einer sendet der andere
empfängt.
Als Start der Testreihe, würde ich anfangen mit
\LoopBackDemoESP32\LoopBackDemoESP32.ino. Dafür musst ACAN2515
"installieren".
Das ein Test mit sich Selbst, ACAN2515 zeigt schon an ob grob, alles ok
ist.
Danach könntest Du auf "Normalmode" gehen und empfangen. Dafür gibt es
allerdings kein Demo. Sicher kriegen wir das auch hin.
Das sind Tests, die würde ich vor Dave's Programm absolvieren!!
Peter* schrieb:> Hallo,>> unter Datei meinte ich eigentlich, welches Textprogramm (ACAN2515) Du> benutzt. Ja..., die Baudprobleme hatte ich mir schon gedacht.>> Funktioniert jetzt das scannen?
Mit der angepassten Baudrate funktioniert es.
> Bei den Board_Einstellungen schreibt jeder etwas anders, es müssen aber> auch alle Port's funktionieren und ich meine ESP32vn IoT Uno ist dies> nicht der Fall.
Okay, das kann ich (noch) nicht beurteilen.
Du hast sicher Recht.
> Auf dem CAN-Bus Board sind zwei LED's, ich benutze die als Sende- bzw.> Empfangs_Led die unabhängig vom Can-Controller arbeiten, leider, da> funktionierten sie nicht.>> Auszug Programm:>> uint8_t Tx = 12; // Sende_LED_D03> uint8_t Rx = 14; // Empfangs_LED_D02>> unter Setup:>> pinMode(Tx, OUTPUT); digitalWrite(Tx, HIGH); // Ausgang; Tx_Led out,> pinMode(Rx, OUTPUT); digitalWrite(Rx, HIGH); // Ausgang; Rx_Led out,>
Das sagt mir leider noch gar nichts. .-(
> Hast Du schon den Can-Bus bzw. Platine getestet?
Nein, weil ich nicht weiß wie.
Ich hatte gedacht, dass ich einfach das Teil an den vorhandenen BUS
hänge und schaue was passiert.
Mut zur Lücke. ;-)
Kann ich eigentlich unendlich viele Geräte an den BUS hängen?
> Du schriebst Du hast noch einen USB Canbus zur Verfügung. Vielleicht> nutzt Du diesen zum testen mit der Karte. Einer sendet der andere> empfängt.
Verbinde ich die einfach miteinander und tue dann was?
> Als Start der Testreihe, würde ich anfangen mit> \LoopBackDemoESP32\LoopBackDemoESP32.ino. Dafür musst ACAN2515> "installieren".> Das ein Test mit sich Selbst, ACAN2515 zeigt schon an ob grob, alles ok> ist.
ACAN2512 habe ich in Version 2.1.1 installiert
Die Installation der Demo scheitert leider daran, dass ich eine
Fehlermeldung bekomme:
`error: 'LED_BUILTIN' was not declared in this scope`
> Danach könntest Du auf "Normalmode" gehen und empfangen. Dafür gibt es> allerdings kein Demo. Sicher kriegen wir das auch hin.
ich bin guter Dinge
> Das sind Tests, die würde ich vor Dave's Programm absolvieren!!
Bin dabei! (y)
Peter* schrieb:> Noch ein kleiner Hinweis zur Verkabelung (bzw. der Software) die SPI_Pin> Nr. sind nicht die Pin's des ESP_Platine bzw. zur Software.>> static const byte MCP2515_SCK = 18 ; // SCK input of MCP2515> static const byte MCP2515_MOSI = 23 ; // SDI input of MCP2515> static const byte MCP2515_MISO = 19 ; // SDO output of MCP2515> static const byte MCP2515_CS = 5 ; // CS>> Wie mitgeteilt zum erwähnten Aufbau.
Ich nehme an, dass wir jetzt an diesem Punkt angekommen sind.
Die vier Zeilen habe ich im LoopBackDemoESP32.ino (Zeilen 30-34)
angepasst.
Was ist aber mit diesen hier?
static const byte MCP2515_INT = 23 ; // INT output of MCP2515 (adapt to
your design)
static const byte MCP2515_RESET = 27 ; // RESET input of MCP2515 (adapt
to your design)
23 ist doch offensichtlich MOSI und nicht gleichzeitig INT.
INT ist am MCP2515 an 13
RESET an 19
...oder sehe ich da irgendetwas falsch?
Ich bin verwirrt
Hallo,
> Ich hatte gedacht, dass ich einfach das Teil an den vorhandenen BUS> hänge und schaue was passiert.> Mut zur Lücke. ;-)
Neee..., Lücke zahlt sich nicht aus.
>> pinMode(Tx, OUTPUT); digitalWrite(Tx, HIGH); // Ausgang; Tx_Led out,>> pinMode(Rx, OUTPUT); digitalWrite(Rx, HIGH); // Ausgang; Rx_Led out,> Das sagt mir leider noch gar nichts. .-(
Das sind Feinheiten brauchen wir momentan noch nicht.
>> Du schriebst Du hast noch einen USB Canbus zur Verfügung. Vielleicht>> nutzt Du diesen zum testen mit der Karte. Einer sendet der andere>> empfängt.> Verbinde ich die einfach miteinander und tue dann was?
Nein.
> Die Installation der Demo scheitert leider daran, dass ich eine> Fehlermeldung bekomme:> `error: 'LED_BUILTIN' was not declared in this scope`
Richtig, die Led ist nicht definiert
static const uint8_t LED_BUILTIN =2;
setze den Satz über Setup.
> static const byte MCP2515_INT = 23 ;
keine Ahnung warum der Skript ohne Interrupt plötzlich hier einen Port
für Interrupt bekommt.
static const byte MCP2515_INT = 26 ;
> static const byte MCP2515_RESET = 27 ; Es gibt kein bedienbaren Reset_Pin.
Würde diesen Befehl erstmal ausklammern.
// static const byte MCP2515_RESET = 27 ;
/*---
RESET MCP2515
pinMode (MCP2515_RESET, OUTPUT) ;
digitalWrite (MCP2515_RESET, LOW) ;
delay (10) ;
digitalWrite (MCP2515_RESET, HIGH) ;
*/
> Ich bin verwirrt..... das ist ESP!
Hallo,
erstmal ein kleinen Schritt noch.
Du hast keine 20Mhz und die Datenrate von 125kbit/s! ist auch falsch.
static const uint32_t QUARTZ_FREQUENCY = 20UL 1000UL 1000UL ; // 20
MHz
ist falsch! Du hast ein 16MHz Quarz auf der Can-bus Platine. Eintrag
ersetzen durch.
static const uint32_t QUARTZ_FREQUENCY = 16UL 1000UL 1000UL ;
Weiterhin:
ACAN2515Settings settings (QUARTZ_FREQUENCY, 125UL * 1000UL) ;
ersetzen durch:
ACAN2515Settings settings (QUARTZ_FREQUENCY, 10UL * 1000UL) ;
Dann sollte es klappen: Abspeichern unter anderen Namen.
Hallo,
der Anhang muss etwas verändert werden #include "ACAN2515.h" in #include
<ACAN2515.h>, ich arbeite immer mit LIB
Der Skript arbeitet bei mir mit Vorgängerversion ACAN2515 2.1.0 sollte
aber auch mit der Neusten funktionieren. Er empfängt nur.
Can_High mit Can_High
Can_Low mit Can_Low
GND mit GND (Jumper setzen)
10kbit/s
evtl. muss Du zum USB_Can Abschlüsse setzen. 120 Ohm.
Der Adressbereich ist momentan begrenzt auf Junkers_Ebene. 0xF9 bis
0x55F
!!!
Bei Verwendung an der Therme rate ich Dir dich zwischen BM1 und TA250
(oder höher), einzukoppeln (ohne Jumper). Dann sollte er alle Daten
anzeigen.
Peter* schrieb:> Hast Du Möglichkeit mit mit dem USB Can was senden.?
Eigentlich nicht, zumindest wüsste ich nicht wie.
Das Ding lauscht nur.
> Bei Verwendung an der Therme rate ich Dir dich zwischen BM1 und TA250 (oder
höher)
Mein Junkers-Bus sieht momentan so aus:
BM1-TA2x-HSM-HMM-CANUSB
Ich hatte jetzt vor, den ESP32 mit dem CANUSB zusammen an die Klemmen
des HMM anzuschließen. Das sollte doch eigentlich kein Problem sein,
oder?
Wenn das neue Teil dann läuft, nehme ich den CANUSB außer Betrieb.
hallo,
> Das Ding lauscht nur
schlecht.
Ok, überspringen wir das.
Ist ok so.
Wenn es läuft sag bescheid, vielleicht scannen wir deinen Bus dann noch
mal um die Protokolle zu vervollständigen.
Peter* schrieb:> Wenn es läuft sag bescheid, vielleicht scannen wir deinen Bus dann noch> mal um die Protokolle zu vervollständigen.
Leider ist es mir aus platztechnischen Umständen heraus nicht möglich an
die Ausgabe des Moduls zu kommen, wenn es am CAN-Bus angeschlossen ist.
Ich versuche daher direkt die Software von Dave zu verwenden, da diese
dann per WiFi an den MQTT-Broker sendet und ich mir von dort aus die
Ergebnisse anschauen kann.
Die Anpassung der SPI-Schnittstelle und der Frequenzen habe ich bereits
mit Daves Hilfe anpassen können.
Die Software ist auch bereits auf dem Board und läuft.
Lediglich mit der Konfiguration des Webinterfaces habe ich noch
Probleme, habe aber auch da bereits eine Anfrage an Dave laufen.
Ich melde mich, wenn ich Neuigkeiten habe.
Gruß,
Bernd
Hallo,
> Leider ist es mir aus platztechnischen Umständen heraus nicht möglich an> die Ausgabe des Moduls zu kommen, wenn es am CAN-Bus angeschlossen ist.
nun eine Arduino_Oberfläche hätte man auch mit einem Laptop gehabt.
> Ich versuche daher direkt die Software von Dave zu verwenden, da diese> dann per WiFi an den MQTT-Broker sendet und ich mir von dort aus die> Ergebnisse anschauen kann.
sind ja so weniger Hürden zu bewältigen um zu wissen ob der Aufbau
wirklich funktioniert!!? ...nehme zwei Schritt und fall aufs M....
> Die Anpassung der SPI-Schnittstelle und der Frequenzen habe ich bereits> mit Daves Hilfe anpassen können
Welche Abpassung der SPI Schnittstelle?, die funktioniert nur so wie ich
sie Dir mitgeteilt habe?
> Die Software ist auch bereits auf dem Board und läuft.
...und wie siehst Du das???
.
Peter* schrieb:> nun eine Arduino_Oberfläche hätte man auch mit einem Laptop gehabt.
Auch wieder wahr.
Melde mich. ;-)
> Welche Abpassung der SPI Schnittstelle?, die funktioniert nur so wie ich
sie Dir mitgeteilt habe?
Ja, genau so habe ich sie konfiguriert.
Hatte nicht gewusst, wo ich diese Einstellungen in Daves Software
vornehmen muss.
> ...und wie siehst Du das???
Nun, sie wurde erfolgreich auf das Board übertragen und gibt das aus,
was sie zu diesem Zeitpunkt ausgeben soll.
Ich bin momentan etwas arg schwer beschäftigt und leiste daher
Unterstützung via Discord, falls sich Leute wundern warum hier mein Name
fällt aber keinerlei Reaktion erfolgt ;)
Viele projektspezifische Dinge kläre ich nun auch dort um diesen Thread
hier nicht unnötig mit Troubleshooting von meinem Code zuzumüllen...
Hallo,
sieht so aus.
Wenn Du noch deine Kommunikation einmal Scannen willst schicke ich Dir
ein anders Programm. Das läuft einige Minuten und zeichnet innerhalb von
3 Minuten (reicht immer) alle Telegramme auf. Sortiert sie nach der
Adressen, löscht doppelte Anträge, zeigt die Zykluszeit an und jeweils
ein Daten Paket pro Adresse, Momentaufnahme.
Diese Datei (*.txt) könntest Du dann hier hinterlegen mit deinem Anlagen
(Ofen; Taxxx; BMx; HSM; HMM;...?) Hinweis.
Für die Allgemeininformation.
Peter* schrieb:> Diese Datei (*.txt) könntest Du dann hier hinterlegen mit deinem Anlagen> (Ofen; Taxxx; BMx; HSM; HMM;...?) Hinweis.> Für die Allgemeininformation.
Klar, warum nicht.
Dann würde ich aber langfristig auf Daves Software umschwenken.
Habe die zwar schon draufgebügelt und seltsamerweise empfängt die rein
garnichts, aber umprogrammiert ist das Teil ja schnell. ;-)
Liebe Grüße,
Bernd
Seit gestern Abend, so gegen 23:00 Uhr lauscht mein ESP32-Modul an
meiner Heizung.
Erstaunlicherweise erscheinen jetzt an dem anderen Modul (Lawicel
CANUSB), das parallel mithört und aktuell noch meinen HomeAssistant mit
Daten versorgt, irgendwelche Störungen. (siehe Bild)
Was könnte die Ursache hierfür sein und wie Stelle ich das ab?
Gruß,
Bernd
Peter* schrieb:
> Diese Datei (*.txt) könntest Du dann hier hinterlegen mit deinem Anlagen> (Ofen; Taxxx; BMx; HSM; HMM;...?) Hinweis.> Für die Allgemeininformation.
Hier übrigens meine Daten:
Junkers ZSB 3-16 A 23
TA270
BM1 (vermutlich)
HSM
HMM
Hallo,
bin erstaunt, das bei Dir doch noch einige Adressen mehr auftauchen.
Vielleicht darf man hier mal eine Aufgabe / Anregung an alle Besitzer
und interessierten vergeben zur Überprüfung der "Funktionen der
Adressen" und Dave's Excels Datei zu erweitern und zu vervollständigen.
Hierzu noch eine Info: Habe festgestellt das sich je nach Anlage
(HSM;HMM bzw. TF20, HKx) die Daten_Länge (Heizkreis_Info) ändern kann.
Vielleicht eine eigene Seite mit Info hinzufügen. Wenn man einen kleinen
Beitrag ;-) leisten möchte bzw. zurückgegeben will.
Habe inzwischen zwei Adressen im 0x600_Bereich ausgemacht.
@Bernd
bin etwas verwirrt, welche Fehler?... beschreibe diese doch etwas
genauer. Für mich ist es schon ein Fehler ein Heizkreissoll von 10°C,
das ist Frostschutz bzw. 90 °C ist wiederum max. VL oder WW_Zeitraum.
Wahrscheinlich ist eher der rechte Raum im Bild zu bewerten?
Peter* schrieb:> bin etwas verwirrt, welche Fehler?... beschreibe diese doch etwas> genauer. Für mich ist es schon ein Fehler ein Heizkreissoll von 10°C,> das ist Frostschutz bzw. 90 °C ist wiederum max. VL oder WW_Zeitraum.> Wahrscheinlich ist eher der rechte Raum im Bild zu bewerten?
Man sieht, dass die übermittelten Werte ab ca. 23:00 Uhr anfangen zu
"schmieren".
Für mich sieht das nach einer Störung im CANBUS-Protokoll aus.
Vorher kommen saubere Werte rein, keine Ausreißer
Um diese Zeit hatte ich Daves Software so weit, dass die Werte empfängt.
Es muss also irgendetwas damit zu tun haben.
Wie steuere ich nochmal alle eingebauten LED's auf diesen beiden Boards
an?
Gruß,
Bernd
Eine der LED-Ausgaben von Daves Software zeigte auf GPIO 26.
Ich glaube, dass das das "Schmieren" verursacht hat.
GPIO 26 ist ja eigentlich INT
...oder täusche ich mich?
Hallo,
nein.
Ihr solltet hier ein anderen LED Pin suchen bzw. benutzen( ~Pin17). Es
ist der Ausgang vom MCP2515 Interrupt und ist direkt verbunden! INT wird
doch benutzt. Vorsorglich nochmals durchsehen was Pierre über /INT
schreibt evtl. R10K an 3,3V Pullup.
can_processor.cpp: was habt Ihr denn hier eingetragen? müsste doch 26
sein und nicht 17.
Nachdem ich gegen 12:00 Uhr die Einstellungen für die LEDs verändert
habe, ist das "Schmieren" zwar besser geworden, aber immernoch da.
Habe jetzt 2, 12, 14 und 25 in den LED Einstellungen der
configuration.json stehen.
Hallo,
wenn ich das richtige sehe ist es WiFi Led die hier angeschlossen war
oder ist die gewechselt werden muss. Versuche nicht die Rx Tx Pin's zu
belegen. Könnte ja mal gut sein für ein Display.
versuch der Analyse: Was sehen wir?
Alles Aufzeichnungen von deinem CANUSB und was sieht das Gerät:
alle Telegramme Hk_Soll auf dem Bus TA270/HMM (ausgewertete Adresse mir
unbekannt) "und" die Vorgabe vom Programm.
Oberflächlich sieht das eher wie eine widersprechende Vorgabe aus. Mal
einen kürzeren Zeitraum aufnehmen. Was sagt den Dave's Programm dazu.
Hallo,
Löschungsmöglichkeit: Telegramme aufzeichnen
ESP_R32_REC_V01.ino ->
Telegramme auf Sollvorgabe (ID) beschränken:
und zwar diese Zeile if (frame.id>=0xF9 && frame.id<=0x55F) zu
if (frame.id==0x252) // Sollwert Vorlauftemperatur
!! 0x252 Heizkreislauf Sollwert Vorlauftemperatur
Kennt jemand den Error Code AC?
Meine Steuerung funktioniert inzwischen ziemlich gut. Zur Zeit steuere
ich Raumtemperatur geführt und fahre die Taktung so, dass auf eine
maximale Raumtemperaturschwankung hingesteuert wird um Taktungsverluste
zu minimieren.
Gestern kam ich so ziemlich nah an einen Takt pro Stunde - sehr gute
Ergebnisse.
Allerdings bekomme ich von Zeit zu Zeit nicht von mir veranlasste
Brennerstarts, die die Vorlauftemperatur hochschnellen lassen und an der
Therme mit Fehlercode AC angezeigt werden (laut Anleitung "Keine
Signalerkennung zwischen TA 211 E bzw. RAM und Leiterplatte. Kabel
prüfen". Siehe 20:10 zweite Graphik.
Kabel scheint soweit in Ordnung. Hat jemand das schon mal gesehen?
Hallo,
Horst S. schrieb:> moin,> mal ne frage an die profis. ich habe eine ksbr3-16a21 ohne busmodul. wie> kann ich aus der daten abgreifen?
Ohne Busmodul oder Schnittstelle dürfte Dir nur das Textmodul
überbleiben.
Könnte mir aber vorstellen, dass das Textmodul über I2C kommuniziert.
BM1; TAxxx sind auch hier für vorgesehen.
Hallo,
Joe Lucid schrieb:> Kennt jemand den Error Code AC?
nun..., mit dem TA211 wird es ja wohl nichts zu tun haben... wenn Du
weiter gelesen hast bzw. geprüft hast,.. steht als letztes Modul ...
erneuern??
Als ich das erste mal deine Fehlermeldung gelesen habe, fiel mir der WW
Heizprozess ein. Hier steigt bei mir auch die VL Temperatur extrem
angeblich an. Das ist ein Fehler der Firma Junkers Bosch, das 3
Wegeventil ist noch geschlossen und die Wärme kann nicht abfließen, wenn
der HK_Strang geschlossen ist. Öffnet man einen Heizkörper in der Nähe
passiert das nicht.
Kann dein Fehler sein,.. muss aber nicht... da wirst Du selber durch
müssen.
Joe Lucid schrieb:> Allerdings bekomme ich von Zeit zu Zeit nicht von mir veranlasste> Brennerstarts
So - den Fehler an der Therme sehe ich inzwischen nicht mehr.
Scheint als wären die Spikes durch Fehler im Warmwasserspeicher Temp
Sensor / Regelkreis begründet. Jedenfalls bekomme ich sie nicht, wenn
ich die WW Soll Temp auf 0 setze.
So steuere ich jetzt auch die WW Temp dynamisch. Hat auch den Vorteil,
dass ich am Ende jeden Heiztaktes die WW Temp checke und falls zu kühl
WW aufheize ohne den Brenner dazwischen abzuschalten. Spart eine Zündung
und ein Auskühlvorgang.
Joe Lucid schrieb:> So - den Fehler an der Therme sehe ich inzwischen nicht mehr.
Alles zurückgenommen. Nach ein paar Stunden kamen die AC Fehler zurück.
Dieses Auftreten in Clustern brachte mich dann auf den wahrscheinlichen
Grund: Die Therme mag es nicht, wenn zu viele Pakete zu Unzeiten
ankommen. Da Dave's Code in Mehrfachen von 1000ms sendet und die Therme
ihre Sendeslots auf Mehrfachen von 100ms hat - und die Uhr der Therme
driftet - kommt es zu Problemen, wenn die Sendeslots überlappen.
Ich habe jetzt die Periode zwischen Paketen auf 1013ms verlängert und
ausserdem die Sendefrequenz untergedreht (zb nur Änderungen der Soll VL
oder WW Temp alle 5s und sonst alle 15s) und bisher läufts den gesamten
Tag ohne Spikes oder Error AC.
Hoffentlich war es dann jetzt auch wirklich.
Schöner wäre noch die esp32 Pakete genau zwischen den Paketen der Therme
zu senden. Das versuche ich als nächstes falls wieder Probleme
auftreten.
Peter* schrieb:> Hier steigt bei mir auch die VL Temperatur extrem> angeblich an. Das ist ein Fehler der Firma Junkers Bosch, das 3> Wegeventil ist noch geschlossen und die Wärme kann nicht abfließen, wenn> der HK_Strang geschlossen ist.
Meine Steuerung ist ja raumgeführt und insofern sind immer wenigstens
zwei Heizkörper voll geöffnet. Trotzdem führt WW Bereitung zu Spikes
-locker 20 C in 5 Sekunden. Viel mehr als die gleiche Leistung im
Heizkreis bewirken würde.
Meine Hypothese: der WW Wärmetauscher braucht sehr hohe Temperaturen um
effizient Wärme übertragen zu können. Deswegen kocht die Therme bewusst
den Brenner hoch bis das Wasser >70C hat - und pumpt erst dann durch den
Tauscher.
Auf jeden Fall stimmt, dass nach der WW Bereitung die Vorlauftemp im
Heizkreis deutlich ansteigt - wahrscheinlich einfach durch den heissen
Brenner. Wenn man hier keinen Abweg hätte, würde es wohl länger dauern
bis die Vorlauftemp wieder notmal ist.
BTW - wollte Euch mal den Einfluss meiner PC Lüfter auf den Heizkörpern
zeigen (siehe Screenshot). Schaut Euch die Vorlauftemp im Rechteck an.
Während dieser Zeit hat meine Frau die Lüfter abgeschaltet. Frappierend
wie viel höher die Vorlauftemperatur geregelt werden musste.
Grund für die Abschaltung ist dass der Luftzug als unangenehm empfunden
wird, wenn die Lufttemperatur niedrig ist. So schalte ich die
Ventilatoren seit heute nur noch an, wenn die Heizungstemp > 25.5 C ist.
Joe Lucid schrieb:> Ich habe jetzt die Periode zwischen Paketen auf 1013ms verlängert und> ausserdem die Sendefrequenz untergedreht (zb nur Änderungen der Soll VL> oder WW Temp alle 5s und sonst alle 15s) und bisher läufts den gesamten> Tag ohne Spikes oder Error AC.
Wo genau hast du das verändert?
Bernd schrieb:> Wo genau hast du das verändert?
Tja gestern Nacht ging's doch wieder los - und auch heute tagsüber
wieder einer dabei (siehe Anhang).
Habs also noch verfeinert: greife im interrupt handler des can busses
die Systemzeit ab und bilde einen laufenden Mittelwert deren Offset von
der vorherigen 100ms Grenze. Das ist relativ stabil (siehe letzte Spalte
zweiter Anhang, Einheit uS).
Pakete schicke ich etwa um 40ms versetzt (siehe Anhang 3, letzte Spalte
in ms). Ausserdem halte ich mindestens 500ms nach Empfang eines Paketes
Stille und lasse mindestens 450ms zwischen zwei Paketen die ich sende.
Ich sag Euch morgen ob das funktioniert.
Hallo,
sorry, aber versteht das noch jemand?? ich leider nicht.
Du protokollierst Diagramme ohne Benennungen und ID'S die hier noch nie
dargelegt wurden,... noch die der Therme zu zuordnen sind. WW ist TA...
Nochmals ein Hinweis (wurde schon mal besprochen), jedes Telegramm das
Du verschickst steht einem System_Telegramm gegenüber mit einem anderen
Dateninhalt. Fakt, je länger Du wartest nach dem System Telegramm um so
stärker wirkt sich evtl. die Störung aus. (z.B: Relais xy: an/aus)
Wird während der Zykluszeit des System_Telegramms ( die zu
berücksichtigen sind, 5s bis 60s) ein Feuerwerk an Telegrammen
gestartet, um eine gewünschte Änderung zu erzielen, ist das nur eine
unnötige Busbelastung und Störung des Bus's.
Zumal wahrscheinlich alle Daten im I2C Ram im BM1 oder auch
TextDisplay(falls vorhanden) zwischengespeichert werden, auch als
zeitliche Schnittstelle.
Die Überschreibung ist an sich schon ein Fehler, hier sollte eher eine
Filterung stehen (Relais_Station); TA...trennung oder eine Fernbedienung
evtl. TF20.
Bin überzeugt das eine Überschreibung nur synchron ablaufen darf.
Jedenfalls scheint das Paket Timing doch nichts mit Error AC zu tun zu
haben. Ich sehe nach wie vor diese spontanen WW Bereitungen mit Error
AC.
Während der Fehler angezeigt wird empfange ich weiterhin erfolgreich
Pakete, allerdings nicht den Fehlercode AC auf dem CAN Bus. Also sieht
es so aus dass Bus und BM1 in Ordnung sind, aber während der Störung die
Therme nicht auf den BM1 zugreifen kann.
Vielleicht liegt es auf der elektrischen Seite? Vielleicht ist das
Netzteil, welches den esp32 speist zu verrauscht und die GND Verbindung
bringt das auf den BM1? Werde mal versuchen das ganze batteriegespeist
zu betreiben.
Hallo,
schlage Dir vor dein System mit einfachster Einstellung ein paar Tage
laufen zu lassen und zwar ohne ESP32 Anbindung. Eine ganz normale
Heizungs- und Warmwassereinstellung ohne null oder sonstige besonderen
Parameter aber mit Außenfühler.
Auf dieser Grundlage kannst Du dann aufbauen.
Wenn dann noch immer ein Fehler auftritt hast Du ein Problem.
Ich glaub ich habs jetzt - warte jetzt bis 800 ms seit letztem Paket von
der Therme vergangen sind. Bei meiner 18-5 habe ich dann immer
mindestens 700 ms bis das nächste von der Therme kommt. In der Zeit kann
ich locker alle Parameter schicken - also kein round robin oder
definierter Sekunden Takt pro Paket Typ.
Schicke jetzt alle 5s alles. Und zumindest heute gab es keinen AC Fall
mehr seit der Änderung.
Hallo,
zur Anmeldung gezwungen, Gründe Spam wer es glaubt!
Nun, was verstehst Du unter Paket?
Sieht man sich die Zykluszeiten der einzelnen Telegramme an kann der ESP
schlafen gehen bei 10K.
Frage wieviel Telegramme willst Du denn eigentlich verändern??
Warum, nicht so, Filter setzen und Interrupt oder halt per normaler SW
:if Id==xx dann sende Meine_Daten, evtl. mit einer kleinen Verzögerung.
Statt den Bus zu blockieren und wieder AC (keine Verbindung -> evtl.
Timeout) zu bekommen.
Joe L.
> Schicke jetzt alle 5s alles. Und zumindest heute gab es keinen AC Fall> mehr seit der Änderung.
Das ist eine Bestätigung, Ihr füllt den Can-Bus mit Daten
War wieder mal eine Ente. 10h funktionierte es ohne Fehler AC - dann kam
der wieder dazu. Scheint überhaupt nichts mit der Sendefrequenz der
Telegramme zu tun zu haben.
Ich werde wohl nicht drum rum kommen mal den i2c Datenverkehr
aufzuzeichnen. Vermutlich ist das als Multi-Master System ausgelegt und
Therme sowie BM1 fungieren beide als Master. Vielleicht behandelt eine
Seite Kollisionen nicht korrekt.
Ich habe hier noch ein paar Moteinos
(https://lowpowerlab.com/shop/product/99) rumliegen. Den BM1 durch einen
solchen zu ersetzen und dann über 433mhz kommunizieren - das wäre
traumhaft.
Aber so wie ich sehe war bisher niemand erfolgreich beim reverse
Engineering des i2c Austauschs, richtig?
Hallo,
Du weißt aber, das Du nur herumstocherst. Den Fehler finden heißt auch
wirklich die Grenzen woher der Fehler kommt immer enger zu ziehen.
Und der erste Schritt währe nun, ob Du ein HW_Fehler wirklich vorliegt.
> Scheint überhaupt nichts mit der Sendefrequenz der> Telegramme zu tun zu haben.
Woraus schließt Du das?
> Ich werde wohl nicht drum rum kommen mal den i2c Datenverkehr> aufzuzeichnen. Vermutlich ist das als Multi-Master System ausgelegt und> Therme sowie BM1 fungieren beide als Master. Vielleicht behandelt eine> Seite Kollisionen nicht korrekt.
Ganz sicher nicht!
Die Therme ist der Master, fügst Du zum Textdisplay (i2C) ein BM1 hinzu
bekommst Du keine Möglichkeit der Eingabe durch das Textdisplay. (so die
Beschreibung, ..noch nicht nachgeprüft). Daten fließen dann zum BM1.
Therme <--> Bedienteil(TA...)
Dieser I2C hat etwa 25 bis 30KHz? (wird immer wieder von mir gemessen
??) warum SCL auch nicht symmetrische ausgelegt ist auch noch eine
offene Frage.
Würde Dir auch empfehlen nicht ohne optische Trennung I2C. (glaube bei
Reichelt habe ich sie neulich gesehen)
Bin mir ganz sicher das Du hier mehr Fragen stellen wirst, die weder
jemand beantworten kann, noch das man die Zeit hat dem nach zugehen. Die
Übergabe dann an eine unsichere 433 MHz Kommunikation muss man dann,...
erst mal verstehen.
Mein Stromzähler läuft auch über 2,4 MHz (Kanal 101) und mindestens
einmal am Tag ist hier ein Fehler dabei, der nicht abgefangen wird.
Ärgerlich...
Peter* schrieb:> Hallo,>> Du weißt aber, das Du nur herumstocherst. Den Fehler finden heißt auch> wirklich die Grenzen woher der Fehler kommt immer enger zu ziehen.> Und der erste Schritt währe nun, ob Du ein HW_Fehler wirklich vorliegt.
Meine Möglichkeiten sind da etwas beschränkt, weil ich kein Bedienteil
TA??? habe. Es funktioniert ja alles prima bis auf die AC Fehler, die
bedeuten dass die Therme sporadisch nicht auf das i2c ram zugreifen
kann. Von daher sollte ich mir sowieso mal die i2c Signale anschauen.
Kabel und Connector sind es nicht - Kabel hab ich getauscht und
Connector gereinigt.
>>> Scheint überhaupt nichts mit der Sendefrequenz der>> Telegramme zu tun zu haben.>> Woraus schließt Du das?
Daraus dass die Fehler unabhängig von vielen unterschiedlichen
Sendealgorithmen auftreten. Sie sind zb nicht häufiger wenn ich Datum,
F9, WW temp, Vorlauf Soll, Heizbetrieb, Witterungssteuerung alle
zusammen in 500ms sende. Und treten auch auf wenn ich den Rhythmus der
TA??? verwende.
>>> Ich werde wohl nicht drum rum kommen mal den i2c Datenverkehr>> aufzuzeichnen. Vermutlich ist das als Multi-Master System ausgelegt und>> Therme sowie BM1 fungieren beide als Master. Vielleicht behandelt eine>> Seite Kollisionen nicht korrekt.>> Ganz sicher nicht!>> Die Therme ist der Master, fügst Du zum Textdisplay (i2C) ein BM1 hinzu> bekommst Du keine Möglichkeit der Eingabe durch das Textdisplay. (so die> Beschreibung, ..noch nicht nachgeprüft). Daten fließen dann zum BM1.>> Therme <--> Bedienteil(TA...)
Ich denke Therme und BM1 sind Master und das i2c ram ist der Slave. I2C
unterstützt das und es ist die einzige vernünftige Möglichkeit die ich
sehe ein geteiltes I2C Ram zu implementieren. Ich meine auch Du hast nur
eine I2C Adresse gesehen - das passt auch, weil beide Master unter der
gleichen Adresse auf das Ram zugreifen.
> Dieser I2C hat etwa 25 bis 30KHz? (wird immer wieder von mir gemessen> ??) warum SCL auch nicht symmetrische ausgelegt ist auch noch eine> offene Frage.
I2C bietet die Möglichkeit für Slaves, den Takt zu verlangsamen indem
der Slave die untere Flanke verlängert. Das könnte der Grund sein. Zwei
Master könnten mit unterschiedlichen Frequenzen arbeiten.
> Würde Dir auch empfehlen nicht ohne optische Trennung I2C. (glaube bei> Reichelt habe ich sie neulich gesehen)
Ich würde das ganze von der Stromversorgung der Therme her betreiben um
mit gleichem GND zu arbeiten. Aber als erstes kommt einfach mal mein
logic analyzer dran.
> Bin mir ganz sicher das Du hier mehr Fragen stellen wirst, die weder> jemand beantworten kann, noch das man die Zeit hat dem nach zugehen. Die> Übergabe dann an eine unsichere 433 MHz Kommunikation muss man dann,...> erst mal verstehen.
In meiner Wohnung ist leider 2.4mhz wifi super unzuverlässig und ich
habe mit dem esp32 häufig Probleme damit. Setze 433 MHz für home
automation mit sehr hoher Zuverlässigkeit ein. Z.b sind die Thermometer
für die Raumsteuerung alle basiert auf dieser Technologie. Das ganze
wird dann über einen esp8266 nach wifi geroutet.
Ich würde die Steuerung dann in diesen esp8266 mit einbauen. Damit wäre
die Heizungssteuerung komplett unabhängig vom Internet/Wifi - ein
grosses plus. Und die Heizungsventile können dann am gleichen 433mhz
Netz teilnehmen.
Wahrscheinlich wäre es am einfachsten, den atmega 328p im Moteino
einfach als i2c slave zu betreiben und das Ram zu simulieren. Der
PCF8570 hat 256 byte RAM - das würde passen. 5V haben wir auch.
Es ist also im Bereich des Möglichen dass ein Moteino für ~10 Euro den
BM1 vollwertig für unsere Zwecke ersetzen könnte.
Peter* schrieb:> warum SCL auch nicht symmetrische ausgelegt ist auch noch eine> offene Frage.
Ich kann die CPU auf der Hauptleiterplatte leider nicht identifizieren -
ausser dass sie von NEC ist (siehe foto). Auch möglich dass i2c per
bitbang implementiert ist da nicht nativ unterstützt.
Das externe RAM vermutlich, da die CPUs so wenig Speicher haben. Die
grosse auf dem BM1 hat 512 byte total.
Hallo,
ich habe die Software von Dave auf den ESP32 geflascht (die beiden
BIN-Files per ESPTool) und komme nicht auf den Access Point Cerasmarter
192.168.4.1.
Mit dem Access Point kann ich mich verbinden aber wie komme ich auf das
WebUI?
Hardware ist ESP32 mit CANdiy-Shield 2.1, Jumper 1-3 sind eigelötet,
Jumper ist auf 3,3V umgelötet.
CAN-Bus wurde erfolgreich mit LoopBackDemoESP32 getestet.
VG
Xander
Hallo,
> Meine Möglichkeiten sind da etwas beschränkt,....
sorry, aber ich werde mir die einzelnen Aufbauten nicht merken können,
auch wenn momentan nur noch Bernd ab und zu auftaucht. Das ist momentan
hier nur "eben mal draufschauen". Die Zeit habe ich gar nicht zur
Verfügung.
... das ändert doch die Problematik, Du hast keinen Mischer in der
Anlage, also Pur und woher kommen dann die 500ter und sogar 600 Id's her
in deiner Aufzeichnung die Du neulich dargelegt hast?
> Es funktioniert ja alles prima bis auf die AC Fehler,...
ja, genau deshalb.... dein System meldet Dir,...mir fehlt was oder es
kommt nicht in der richtigen Reihenfolge oder nicht zum richtigen
Zeitpunkt. Das ist auf dem Can-Bus durchaus üblich.
Du schickst ein Telegramm das evtl. die Anwesenheit eines HMM oder HSM
meldet und dann sind sie nicht mehr da.
> dass die Therme sporadisch nicht auf das i2c ram zugreifen
Glaube mir, das hat nichts damit zutun, es ist jetzt ungefähr 1 1/2
Jahre her das ich den i2C aufgegriffen habe und zeitlich war das ein
Fass ohne Boden.
> Sendefrequenz
die Sendefrequenz ist 10k vom Can-Bus, du meinst die Zykluszeit der
Telegramme
> Ich würde das ganze von der Stromversorgung der Therme her betreiben um> mit gleichem GND zu arbeiten.
Am Stecker des zum BM1 sind 5 V vorhanden am Textdisplay nur 24V.
Ich rate Dir aber trotzdem ab, modifiziere lieber deine Anlage mit dem
Can-Bus und vereinfache deine Kommunikation auf das nötige und zeitliche
korrekte Telegramm. Simuliere hier das TA... das ist einfacher als Du
glaubst vom zeitlichen und erst recht mit einem ESP32 (....240Mhz)
> ... das ändert doch die Problematik, Du hast keinen Mischer in der> Anlage, also Pur und woher kommen dann die 500ter und sogar 600 Id's her> in deiner Aufzeichnung die Du neulich dargelegt hast?
Das war mit dem BM2 - mit dem BM1 sieht alles genau so aus wie es soll.
> Ich rate Dir aber trotzdem ab, modifiziere lieber deine Anlage mit dem> Can-Bus und vereinfache deine Kommunikation auf das nötige und zeitliche> korrekte Telegramm. Simuliere hier das TA... das ist einfacher als Du> glaubst vom zeitlichen und erst recht mit einem ESP32 (....240Mhz)
Na das habe ich jetzt bis ins Extreme getan. Ich habe genau wie die TA's
gesendet und auf viele anderen Weisen. Das ist nicht das Problem.
> es ist jetzt ungefähr 1 1/2> Jahre her das ich den i2C aufgegriffen habe und zeitlich war das ein> Fass ohne Boden.
Du hast nur relativ wenig zu dem Thema hier geschrieben und das war
nicht so recht klar (für mich). Hast Du den I2c Bus belauscht während
die Hauptplatine mit BM1 verbunden war? Waren alle Daten auf dem
BM1/Hauptplatine Bus I2c Packete an die Adresse 0x50 oder gab es noch
anderen Austausch (möglicherweise direkt zwischen BM1 und Platine)?
Mir scheint die Architektur mit dem geteilten i2c RAM darauf
hinzudeuten, dass die Prozessoren durch den asynchronen Austausch über
das RAM entlastet werden sollten. Wenn das eine Motivation ist, würde
man wohl alles darüber laufen lassen. Aber dann hätte ich erwartet, dass
man Lese- und Schreizugriffe auf Adresse 0x50 sehen würde, die die
Informationen auf dem Can Bus reflektieren.
Der Prozessor auf dem BM1 kann übrigens DMA von Can Bus direkt ins RAM -
ein Grund zu spekulieren, dass das Timing der Can Bus Pakete keine Rolle
spielt. Wie es sich in allen meinen Versuchen bisher gezeigt hat.
Auch interessant (https://www.nxp.com/docs/en/data-sheet/P8XC592.pdf):
The main differences between P8xC592 and P8xC552 are:
• 16 kbytes programmable ROM (P8xC552 has 8 kbytes) • Additional 256
bytes RAM
• A CAN-controller instead of the I2C-serial interface.
Mit anderen Worten die I2C Implementierung auf dem BM1 erfolgt in
Software. Wie oben erwähnt ist das wahrscheinlich der Grund für das von
Dir beobachtete asymmetrische SCL.
Hallo,
> Na das habe ich jetzt bis ins Extreme getan. Ich habe genau wie die TA's> gesendet und auf viele anderen Weisen. Das ist nicht das Problem.
Hast du nicht geschrieben das Du alle Telegramme hintereinander
verschickst?
Ich habe hier ein Programm hinterlegt das die Zykluszeiten ans Telegramm
heftet. Baust Du Dir hieraus ein Array mit Struktur und sendest deine
Telegramme zur Zykluszeit ist es richtig.
> Hast Du den I2c Bus belauscht...
Das war ein Schreibtischtest ohne Hauptplatine, eher TA250 <-->
Speicher, des halb habe ich es auch nicht weiter veröffentlicht.
Meine Vermutung war das alle Daten (notwendige) vom TA.. in den Speicher
geschrieben werden sowie Umgekehrt und das der Speicher als Bindeglied
benutzt wird zur zeitlich Entkopplung. Das konnte ich nicht belegen,
aber es gab besondere Zellen die wohl von der Platine als Daten gültig
benutzt werden. Handshake. Vom BM1 oder Speicher gingen keine anderen
Adressen ab.
> dass> man Lese- und Schreizugriffe auf Adresse 0x50 sehen würde
Das ist auch der Fall, nur die Zellen ändern sich zum Teil? Der Versuch
einer Analyse war mehr als schwierig. Hier mal ein Versuch Datei.
ohne Anspruch das es wirklich so war, im Schreibtischtest.
> Ich habe hier ein Programm hinterlegt das die Zykluszeiten ans Telegramm> heftet. Baust Du Dir hieraus ein Array mit Struktur und sendest deine> Telegramme zur Zykluszeit ist es richtig.
Das habe ich alles schon versucht. Dave's Timing, Timing nach Deiner
Analyse, alles zusammen, sogar in zu festen Offsets in ms von
empfangenen Paketen.
>> Hast Du den I2c Bus belauscht...> Das war ein Schreibtischtest ohne Hauptplatine, eher TA250 <-->> Speicher, des halb habe ich es auch nicht weiter veröffentlicht.>> Meine Vermutung war das alle Daten (notwendige) vom TA.. in den Speicher> geschrieben werden sowie Umgekehrt und das der Speicher als Bindeglied> benutzt wird zur zeitlich Entkopplung. Das konnte ich nicht belegen,> aber es gab besondere Zellen die wohl von der Platine als Daten gültig> benutzt werden. Handshake. Vom BM1 oder Speicher gingen keine anderen> Adressen ab.>>> dass>> man Lese- und Schreizugriffe auf Adresse 0x50 sehen würde>> Das ist auch der Fall, nur die Zellen ändern sich zum Teil? Der Versuch> einer Analyse war mehr als schwierig. Hier mal ein Versuch Datei.
Ah ok, danke. Ich vermute man muss schon mit der Hauptplatine testen.
Kann gut sein dass der BM1 sich beim Beschreiben des RAMs auf die Therme
einstellen muss und deswegen drauf wartet eine Kennung der Therme im RAM
zu finden.
Der BM1 mag Teile des RAMs für eigene Zwecke nutzen - dann würden die
sich ändern aber ohne offensichtliche Relation zu Can Bus Paketen.
Naja wenn ich etwas Zeit habe probiere ich es mal aus. Funktioniert so
auch schon gut genug aber die gelegentlichen Spikes stören mich gewaltig
auch wenn die Energieverschwendung gering ist und mehr als
überkompensiert wird durch mein ~45 minütiges Takten.
Ich habe ziemlich frappierende Einsparungen dieses Jahr - siehe Anhang.
Da kann man zufrieden sein.
Marco schrieb:> Hallo,> ich habe die Software von Dave auf den ESP32 geflascht (die beiden> BIN-Files per ESPTool) und komme nicht auf den Access Point Cerasmarter> 192.168.4.1.> Mit dem Access Point kann ich mich verbinden aber wie komme ich auf das> WebUI?> Hardware ist ESP32 mit CANdiy-Shield 2.1, Jumper 1-3 sind eigelötet,> Jumper ist auf 3,3V umgelötet.> CAN-Bus wurde erfolgreich mit LoopBackDemoESP32 getestet.
Hast du vorher auch ein Filesystem geflasht?
Hallo,
abschließend I2C.
Joe L.
> Der BM1 mag Teile des RAMs für eigene Zwecke nutzen - dann würden die> sich ändern aber ohne offensichtliche Relation zu Can Bus Paketen.
nein, reine Kommunikation,...bei 256 Byte? die Excel_Datei zeigt ja das
Soll Daten vom TA.. abgelegt wurden. Ist_Daten werden von der Therme...
dort abgelegt.
So ist jeder zeitlich unabhängig im Rahmen der zyklischen Protokolle.
Könnte mir vorstellen das hier ein ALive_byte oder Bits existiert die
hochgezählt werden und zum Fehler führen... Spekulation
Der Beitrag Junkers TA270 CAN-Fehler 1 von crazyhorse bestätigt die
Annahme der Kommunikation.
> Ich habe ziemlich frappierende Einsparungen dieses Jahr - siehe Anhang
nun gewagte Durchschnittsberechnung. 365Tage?
Peter* schrieb:> Hallo,>> abschließend I2C.>> nein, reine Kommunikation,...bei 256 Byte? die Excel_Datei zeigt ja das> Soll Daten vom TA.. abgelegt wurden. Ist_Daten werden von der Therme...> dort abgelegt.> So ist jeder zeitlich unabhängig im Rahmen der zyklischen Protokolle.
Na dann scheint doch alles ganz einfach zu sein - sorry hatte Dein
spreadsheet nicht ganz richtig gelesen. Dann müssen wir doch lediglich
ein i2c ram slave auf der Adresse 0x50 simulieren und unsere soll Werte
an den richtigen Stellen ablegen uns sind fertig.
>> Könnte mir vorstellen das hier ein ALive_byte oder Bits existiert die> hochgezählt werden und zum Fehler führen... Spekulation
Da die Fehler so selten sind und in Clustern auftauchen vermute ich dass
es sich um Kollisionen handelt. Multi Master i2c ist ja etwas tricky
falls beide Master gleichzeitig auf den Slave zugreifen und gerade da
der BM1 i2c offenbar in Software implementiert kann man sich leicht
vorstellen dass dieser Spezialfall gelegentlich in die Hose geht. Dieses
Problem wäre mit einem simulierten i2c RAM gelöst weil der BM1 Master
wegfällt.
>> Der Beitrag Junkers TA270 CAN-Fehler 1 von crazyhorse bestätigt die> Annahme der Kommunikation.
Ja - danke für den Pointer.
>> Ich habe ziemlich frappierende Einsparungen dieses Jahr - siehe Anhang> nun gewagte Durchschnittsberechnung. 365Tage?
Keine Ahnung wie die das schätzen. Ich denke das Resultat wird noch
besser sein. Wenn wir aus der Heizsaison raus sind brauche ich nicht
mehr als vielleicht 12 kWh pro Tag für WW. Jedesmal wenn ich einen neuen
Zählerstand hoch lade sinkt die Schätzung.
Ich hatte den WW Speicher früher auf 60 C für das Baden. Jetzt halte ich
den auf um die 37 C und habe ein Frontend über das sich Mitbewohner 45 C
zum Duschen oder 60 C zum Baden anfordern können. Das spart locker 10
kWh am Tag.
Und die raumgeführte Steuerung wird gerade jetzt in der Übergangszeit
die Solargewinne (wir wohnen 4. Stock und Dachgeschoss) optimal nutzen.
Du kannst es am heutigen Tag schön sehen (angehängt). Die Taktfrequenz
zwischen 13 und 15 Uhr lag bei < 1 Takt pro Stunde und es gab so gut wie
kein Ueberschiessen der Temperatur.
Hier ein Mitschnitt von i2c bei laufender Therme. Es könnte simpler
nicht sein. Wie vermutet ist es ein Multimaster setup - dh Therme und
BM1 sind master und schreiben/lesen das RAM unter i2c Adresse 0x50. Es
gib Lese- und Schreibzugriffe. Zum lesen wird erst in einem write an
0x50 die RAM Adresse geschrieben und dann mit einem 2. read request an
0x50 der Inhalt ausgelesen. Zum Schreiben ist es nur ein i2c write an
0x50 mit einer folge von Bytes - erstes ist die RAM Adresse und dann
folgen die Daten.
Die Therme schreibt an 0x20 ... und liest von 0x90 ... . An den Adressen
0x10 und 0x11 wird handshake betrieben: 0x10 == 1 bedeutet es liegen
Daten von der Therme für den BM1 vor. 0x11 = 1 bedeutet es liegen Daten
vom BM1 für die Therme vor.
0x91 ist Vorlauf soll - mehr hab ich noch nicht abgeglichen.
Zusätzlich wird RAM Adresse 0xfe-0xff noch gelesen und beinhaltet immer
0xfc 0x03. Habe nicht gesehen dass das je geschrieben würde. Keine
Ahnung was das ist.
Pull-ups ziehen auf 5v. Zusätzlich zum Moteino braucht man also eine
Level shifter. Ansonsten ist das ganze trivial.
Hallo,
na super!
Bestätigt ja sogar meine Excel_Liste 10/11 und 90 Adressen im Bereich
TA... und Speicherende dazu hatte ich auch eine Ahnung, aber zu lange
her und noch nix schriftlich.
Vielleicht parallel, noch das Can Bus Protokoll und direkt im 16ner
block darlegen um feste Adressen zu bestätigen.
Habe leider keine Zeit hier mit fest einzusteigen, zumal mir nur ein
Saleae logic Analyzer zur Verfügung steht. Ein Hauptplatine und ein
Textdisplay liegen bei mir schon ein Jahr herum, um hier eine
aussagefähige Lösungen zu finden.
> Ansonsten ist das ganze trivial..
Sorry, aber so würde ich es noch nicht sehen. Der Beitrag hier ist von
2007 und eine optimale Lösung ist noch nicht auf dem Tisch, teils
funktioniert es, dann gibt es wieder Probleme. Die Schnittstelle nutzen
zu können heißt nicht das dein Problem gelöst ist, aber eine Kostenfrage
währe gelöst, aber auch wieder gefährlich. Optische Trennung ist ein
muss.
Vielleicht kann Marco jemand mit Dave's Programm weiterhelfen, einer
mehr im Boot.
Peter* schrieb:> Optische Trennung ist ein> muss.
Warum das denn? Pegelwandler auf die i2c Leitungen auf die 5V vom Board
und Moteino mit den 5v vom Board betreiben. Dann ist das super safe. Was
soll denn bei i2c passieren, wo der output aller pins immer aktiv 0 oder
floating ist.
Hallo,
Sicher, es ist jeder selbst verantwortlich!
Aber man muss drauf hinweisen.
Die Hauptplatine kostet "noch(lieferbar)" 300 bis 500Euro plus, deine
I2C Platine kostet ~10Euro. Ein HW defekt ist eher bei der I2C Platine
möglich als bei der Hauptplatine unter der Einbaubedingung, aber
zerstört evtl. auch die Hauptplatine.
Nimm ein Oszilloskop und messe mal an deiner Therme und Du wirst beim
schalten der Ventil(Gas)usw. Spannungsspitzen sehen die sehr bedenklich
sind. Viele haben hier schon HW ersetzt und hier war auch nur Can-Bus
Aktivität vorhanden.
Natürlich geht es einfacher,
aber sicher ist sicher.
Hallo,
habe mir die Daten mal angeschaut.
Kannst Du die Beschriftung ändern in TA lesen /schreiben und Therme
lesen/ schreiben währe einfacher und wie Du schon erwähntes die Start
Sequenz ist sehr wichtig.
Währe einfacher zu analysieren.
Kommt leider so aus Logic 2, was ich auch benutze. Hier ist eine andere
Ansicht mit Startsequenz. Der ziemlich letzte Knackpunkt für mich ist
das letzte Byte der Schreibsequenzen auf 0x90. Das ist eine Checksumme,
die ich noch nicht erkenne.
Hatte gehofft dass wir der Therme vielleicht noch die Nachlauftemperatur
entlocken können - aber so sieht es nicht aus. Dafür verändern sich
einige flags wenn der Brenner anläuft. Ich schätze, Ventilation, Zündung
und vielleicht sogar Zustand des 3-wege Ventil sind abgreifbar.
Hallo,
nun so viele Daten benötigen wir erstmal nicht, es reichen die normalen
Sequenzen zu interpretieren. Das sind zwei, die Start- und die Daten
Austausch_Sequenz.(ohne TA... mit neue Daten)
die letzte Datei bringt wohl die Pause als auch eine i2C Adresse 49 aber
ist eher ungeeignet.
Hast Du die Sw von der vorherigen Datei, müsste ja Arduino sein.
Hallo,
Joe L. schrieb:> Hatte gehofft dass wir der Therme vielleicht noch die Nachlauftemperatur> entlocken können - aber so sieht es nicht aus. Dafür verändern sich> einige flags wenn der Brenner anläuft. Ich schätze, Ventilation, Zündung> und vielleicht sogar Zustand des 3-wege Ventil sind abgreifbar.
Nachlauftemperatur? -->Rücklauftemperatur, woher soll die kommen meine
Heizung hat kein Fühler hierfür.
Nun hatte in einer Information zum Textdisplay gelesen das hier, auch
die Einstellung und Service dargestellt wird.??
Peter* schrieb:> Hallo,>> nun so viele Daten benötigen wir erstmal nicht, es reichen die normalen> Sequenzen zu interpretieren. Das sind zwei, die Start- und die Daten> Austausch_Sequenz.(ohne TA... mit neue Daten)>> die letzte Datei bringt wohl die Pause als auch eine i2C Adresse 49 aber> ist eher ungeeignet.
Die letzte Datei hat die start Sequenz und dann den laufenden traffic.
Es ist eigentlich wirklich alles banal einfach. Am Anfang schreibt einer
von beiden die zwei bytes an 0xfe und eine Sequenz an 0xe0 (die nie
wieder gelesen wird). Dann läuft der Austausch wie vorher beschrieben.
Dabei testet die Therme die zwei bytes an 0xfe ab bevor sie
liest/schreibt.
Die Implementierung des neuen Adapters braucht nichts anderes zu tun als
alle writes von der Therme zu speichern und bei Anfrage zurückzuliefern.
Und periodisch den 0x90 ... Bereich intern (nicht über i2c) gemäss der
Vorgaben der Steuerung updaten und die Handshake bytes checken/updaten.
Ausserdem sendet sie einfach periodisch die Infos in 0x20 ... an die
Steuerung.
Das ist wirklich nicht mehr als 50 Zeilen Code.
>> Hast Du die Sw von der vorherigen Datei, müsste ja Arduino sein.
Das war auch Logic 2 Saleae mit i2c Analyzer. Aber da hatte ich aus dem
Terminal output per cut&paste kopiert. Das sind leider nur die Daten der
letzten paar Minuten.
Peter* schrieb:> Nachlauftemperatur? -->Rücklauftemperatur, woher soll die kommen meine> Heizung hat kein Fühler hierfür.
Tomeito - Tomahto ja ich meinte Rücklauf. Hab gerade nochmal das Manual
angeschaut und es gibt noch einen Brennertemp Fühler. Aber Du hast Recht
es ist kein Rücklaufsensor drin.
>> Nun hatte in einer Information zum Textdisplay gelesen das hier, auch> die Einstellung und Service dargestellt wird.??
Da bin ich aussen vor. Ich bin noch eine Generation vor Textdisplay
(18-5).
Hallo,
ich dachte Du hast mit deiner Schaltung die SW ausgewertet. Es gibt kaum
wirklich funktionierende SW für Arduino, zu langsam?
Nun, wenn Du SW hast zur Auswertung bitte ich Dich diese darzulegen.
> Ich bin noch eine Generation vor Textdisplay
Habe ich auch nicht, aber der Stecker passt auch dort. Uhrstecker hat
mehrere Kodierungen und die Endabnahme von Bosch/Junkers wird sicher
über I2C durchgeführt.
> Brennertemp Fühler
Ist ein Sicherungsschalter.
> Letzte Hürde war die Checksumme - aber die hab ich ja nun geknackt.
Habe ich leider nicht verstanden, noch gesehen.
Am Anfang schreibt einer
> von beiden die zwei bytes an 0xfe und eine Sequenz an 0xe0 (die nie> wieder gelesen wird).
Btw man kann an SCL sehen welcher Master schreibt. Die erste
Initialisierung kommt vom BM1. BM1 ist daran erkennbar dass SCL
asymmetrischer und unregelmässiger ist und die low Seite länger. All das
liegt daran dass wie oben gesagt der BM1 keine i2c Funktionalität in HW
hat und das in SW simulieren muss. Siehe Anhang.
Peter* schrieb:> Nun, wenn Du SW hast zur Auswertung bitte ich Dich diese darzulegen.
Ich habe das alles mit Saleae Logic 2 und einem Logic Pro 16 gemacht.
Das Ding ist super - kann ich nur jedem empfehlen.
Peter* schrieb:> Habe ich leider nicht verstanden, noch gesehen.
Es ist ein 8 bit CRC mit folgenden Parametern:
width=8 poly=0x39 init=0x00 refin=false refout=false xorout=0x00
check=0x8f residue=0x00
Peter* schrieb:> Nun, wenn Du SW hast zur Auswertung bitte ich Dich diese darzulegen.
Ich kann Dir die Logic Capture Datei schicken - Du hast doch auch Logic?
Dann kannst Du das wie ich in der Applikation analysieren.
Joe L. schrieb:> BM1 ist daran erkennbar dass SCL> asymmetrischer und unregelmässiger ist und die low Seite länger.
So sieht ein Zugriff von der Therme aus. Das ist im Gegensatz zum BM1
i2c in HW.
Und hier sieht man mal wie lange der BM1 den I2C Bus belegt. Volle 80 ms
- SCL bleibt zwischen den einzelnen Sequenzen low.
Zweiter screenshot zeigt die Kollision zwischen beiden Mastern. Das
verursacht denke ich die Fehler AC. Und da es mit dem neuen Ansatz nur
noch einen Master gibt wird das AC Problem wahrscheinlich gelöst sein.
Hallo,
bin kein I2C Spezi, aber ich sehe kein CRC, aber erstmal egal.
Erstaunlicherweise ist in der letzten Datei I2C.csv, 3 Zeile
Speicheradresse 0xE0 identisch mit meiner Excel_Liste 0xE0...0xE7.
Hier wird scheinbar etwas beschrieben, Aufbau...
> Zweiter screenshot zeigt die Kollision zwischen beiden Mastern. Das> verursacht denke ich die Fehler AC. Und da es mit dem neuen Ansatz nur> noch einen Master gibt wird das AC Problem wahrscheinlich gelöst sein.
?
willst auf den Speicher verzichten oder wie soll das funktionieren.
Letztes Byte in der 0x90 … Sequenz ist ein CRC der vorangehenden Bytes.
Und ja klar - wozu ein RAM? Deswegen schreibe ich doch immer wir
simulieren das RAM für die Therme auf dem Arduino.
Hallo,
na klar,
Bosch/Junker hat mal wieder übertrieben und baut mal eben einen Speicher
ein, der ja gar nicht benötigt wird.
Da bist Du aber sehr weit von der Realität weg, auch wenn sich die
Frequenz der Controller in laufe der Jahre geändert hat. Für ein
Cent/Pfennig hätten die auch vor 20 Jahre das Bauteil gewechselt oder
mit nc gekennzeichnet.
Und welche Aufgabe hatte der Speicher noch? und diese ist nicht mehr
vorhanden?
Weitergedacht, ganz grob nach deiner Aufzeichnung hast Du etwa 20ms zeit
deine anderen geplanten Aufgaben zu erfüllen.
Vorschlag, CRC über Tabelle ist schneller.
Hauptsache, der dein AC-Fehler ist nicht mehr da.
Peter* schrieb:> Da bist Du aber sehr weit von der Realität weg, auch wenn sich die> Frequenz der Controller in laufe der Jahre geändert hat. Für ein> Cent/Pfennig hätten die auch vor 20 Jahre das Bauteil gewechselt oder> mit nc gekennzeichnet.>> Und welche Aufgabe hatte der Speicher noch? und diese ist nicht mehr> vorhanden?>> Weitergedacht, ganz grob nach deiner Aufzeichnung hast Du etwa 20ms zeit> deine anderen geplanten Aufgaben zu erfüllen.
Da sehe ich nicht das geringste Problem. Daten werden natürlich
vorbereitet und CRC vorher berechnet. Am besten mit double buffering -
d.h. die Bereiche im RAM die der BM1 schreibt gibt es zweimal: einmal
aktuell zum Zugriff per i2c. Und ein 2. mal zur Aufbereitung der neuen
Daten. Sind die Daten fertig und der Bus frei werden die Sektionen
getauscht.
30khz is super lahm. So um die 0.3 ms per byte - das sind 2400
Taktzyklen eines 8 MHz Arduino. In der Zeit schaffe ich es schon ein
Byte vom RAM in den i2c buffer zu schreiben :-).
Sinn des Speichers ist es die alten langsamen Prozessoren vor exzessiver
Kommunikation zu bewahren. Die Therme ist weiter bewahrt. Aber der
Arduino muss davor nicht bewahrt werden.
Bedenke auch dass sich durch diesen Ansatz jegliches Schreiben der Soll
Daten per I2C ins Ram erübrigt. Was der BM1 ja per software bitbang
macht. Da Arduinos HW I2C haben muss nur der Buffer per interrupt
byteweise gefüttert werden, den Rest erledigt der 328p (oder was auch
immer). Und 3khz interrupt load traue ich dem 328p allemal zu.
Ansonsten könnte man beim Senden auch pollen - die 10 bytes oder so die
maximal übertragen werden dauern 3ms. Kein Problem aber wahrscheinlich
nicht notwendig da keine exzessive Interrupt load.
Und Can Bus fällt auch noch weg.
Wie gesagt - das ganze ist äusserst banal und simpel.
Joe L. schrieb:> Für ein>> Cent/Pfennig hätten die auch vor 20 Jahre das Bauteil gewechselt oder>> mit nc gekennzeichnet.
Ich kann nur vermuten dass es damals keine Microcontroller mit
integriertem Can bus und I2C gab. Jedenfalls - wenn ich mir die
Kollisionen anschaue zweifle ich doch ein bisschen an der Expertise der
damaligen Entwickler.
Möglicherweise ist genau das der Grund für die Aufgabe des Can Bus. Dass
es keine HW gab die i2c & Can konnte und sie nicht in der Lage waren das
ordentlich in SW hinzubekommen.
Hallo,
> Ich kann nur vermuten dass es damals keine Microcontroller mit> integriertem Can bus und I2C gab.
suche,...so wirst Du finden und es gibt Leute in der Entwicklung die
Schreiben Dir das in Maschinensprache und erst recht damals da gab es
noch keine großartigen Speicher IC.
Du amputierst ein System und beschwerst Dich dann über Kollisionen...?
Hast schon mal überlegt ob Du ohne eine Beschreibung der HW das System
verstehst.
Simulieren heißt nicht vergewaltigen...
> Was der BM1 ja per software bitbang> macht. Da Arduinos HW I2C haben muss nur der Buffer per interrupt> byteweise gefüttert werden, den Rest erledigt der 328p
Das scheint immer in aller Munde zu sein um eine Abwertung der SW zu
rechtfertigen. Sicher beim Arduino laden sich alle Register durch eine
Ki. Die SW ist offengelegt.
> wenn ich mir die> Kollisionen anschaue zweifle ich doch ein bisschen an der Expertise der> damaligen Entwickler.
Es gibt sicher einige Unschönheiten, aber solche Aussagen sind ganz
sicher nicht tragfähig...Dann müsste ich es besser können.
und ich lasse mich gerne überraschen und zieh mein Hut.
Joe L. schrieb:> Peter* schrieb:>> und ich lasse mich gerne überraschen und zieh mein Hut.>> Prepare to be amazed ;-).
So - den esp32 konnte ich tatsächlich ohne Pegelwandler anschliessen und
er hat auch empfangen. Allerdings hat der chip i2c-slave Limitationen,
die ihn für unsere Zwecke untauglich machen. Jedenfalls so der Stand
nach ein paar Stunden hacken.
Also hab ich den Moteino mit Pegelwandler angeschlossen und siehe da -
funktioniert hervorragend. Angehängt ist ein Schreibvorgang der Therme
auf 0x10 und 0x11 mit nachfolgendem Lesen.
Jetzt das ganze nur noch per 433mhz network zum esp8266 gateway
schicken, dort die Steuerung machen und die Soll Daten zurückschicken.
Hallo,
nun...wie immer provokant und "über selbst bewusst" und nichts ist
nachvollziehbar , schade..!
Joe L.
> Allerdings hat der chip i2c-slave Limitationen,> die ihn für unsere Zwecke untauglich machen.
Und... die sind!!!
> ein paar Stunden hacken.
? Daten | im Garten
Das Ausspähen von Daten ist gemäß § 202a dem deutschen Strafgesetzbuch
(StGB) ein Vergehen, welches mit Freiheitsstrafe bis zu drei Jahren oder
Geldstrafe bestraft wird.
sorry.
> Also hab ich den Moteino mit Pegelwandler angeschlossen und siehe da -> funktioniert hervorragend. Angehängt ist ein Schreibvorgang der Therme> auf 0x10 und 0x11 mit nachfolgendem Lesen.
ohne SW, einfach so? Was hat denn funktioniert, der Pegel?
Zitatauszug Google: "In der Kommunikationswissenschaft wird
Kommunikation als der Austausch von Informationen zwischen einem Sender
und einem oder mehreren Empfängern bezeichnet"... und nicht deinem
Scanner an der Therme!
Sorry, ich sehe hier nicht einmal... eine Vorbereitung zum
Kommunikationsaustausch. Noch, die Antwort eines Empfängers wäre doch
einfach gewesen.
Kommuniziere doch einfach erstmal mit dem BM1, !!Achtung 5V!! ISO1540
bzw. AVUM1250 sind sowohl Pegelwandler als auch Isolatoren.
Vor allem würde mich interessieren, wie das zeitliche Problem (I2C)
angeblich von Dir gelöst wurde ...? besonders beim ESP.
So - ich habs jetzt komplett am Laufen. Moteino (= Arduino mit rfm69hw
433mhz transceiver) über Pegelwandler direkt am Thermenstecker. BM1 ist
nicht mehr mit im Spiel.
Moteino simuliert das I2C RAM und schickt die Thermeninformationen (i2c
Adresse 0x20 ...) über den rfm69hw weiter. Auf der Rückrichtung schickt
die Steuerung wieder über 433mhz die Solldaten zurück und der Moteino
schreibt sie ins RAM (i2c Adresse 0x90 ...). Weiterhin managed der
Moteino das Handshaking mit der Therme über das i2c RAM (Adressen 0x10 -
0x11).
Mal sehen ob damit die AC Fehler ausgemerzt sind.
Peter - sorry ich verstehe nicht ganz was Dein Problem ist. Ich hätte
gedacht dass Du in der Lage bist ein i2c trace zu lesen - wo Du doch
anscheinend seit Jahren da dran bist. Die Graphik zeigte einen
erfolgreichen Schreib- und Lesevorgang der Therme auf den simulierten
i2c Speicher.
Jedenfalls wäre jetzt in Tagen erreicht, was Du hier immer als unmöglich
dargestellt hast weil Du Dir jahrelang die Zähne dran ausgebissen hast.
Sei es drum - schönen Abend allerseits!
Angehängt ist der Aufbau. Ignoriert das Steckbrett - das ist Teil des
alten Can Bus Aufbaus. Es ist in der Tat nicht mehr als ein Arduino und
ein Pegelwandler.
Peter* schrieb:>> Allerdings hat der chip i2c-slave Limitationen,>> die ihn für unsere Zwecke untauglich machen.>> Und... die sind!!!
Der esp32 unterstützt kein i2c clock stretching - dh wenn er als Slave
betrieben wird, kann er den Master nicht drosseln während er Daten
bearbeitet. Angeblich ist das bei neueren Versionen des esp32 gelöst.
Ich bin nicht ganz überzeugt, dass es nicht auch mit der ursprünglichen
Version möglich ist, da ich vermute dass der Chip schnell genug ist,
dass kein stretching erforderlich ist. Aber nach ein paar Stunden hatte
ich keine Lust mehr - da ich sowieso den Moteino einsetzen wollte und
die esp32 Arbeit nur für Dave's Projekt geplant hatte.
Das nervige an den esp???? Chips ist die schlechte Dokumentation. Ein
atmega 328p ist zwar Grössenordnungen langsamer - aber immerhin weiss
man was man hat und die Doku ist gut.
Auch mit dem Moteino hatte ich zunächst Probleme bei einem Lesevorgang,
der i2c technisch durch ein Schreiben der Adresse mit folgendem Lesen
der Daten realisiert wird. Beim Übergang zwischen dem Schreib- und
Lesezugriff unterstützt die Therme kein Clock Stretching (genauer vor
dem Start bit des Lesezugriffs). Deswegen muss ich für diesen Übergang
im interrupt pollen.
Wer es nochmal mit esp32 probieren möchte: beste Chance ist ohne
jeglichen Fifo, so dass die Datenaufbereitung byteweise erfolgt. Und
möglicherweise auch hier pollen.
Was natürlich verloren geht ist das Aussenthermometer. Aber das ist
ohnehin nicht sehr wichtig für meine Anwendung. Behelfsweise ziehe ich
die aktuelle Temp von openweathermap.com.
Übrigens: die Therme weiss nichts von der aktuellen Zeit. Und die
Aussentemperatur bekommt sie nur in ganzen C übermittelt. Soviel zum
Thema die Therme steuert und die TA??? sind nur "Fernbedienungen".
Hallo,
Nun.. keine Zähne verloren, ich kann Dich beruhigen.
Vielleicht bleibst Du einfach mal bei der Wahrheit in allen Bezügen.
Wer bitte wird das hier nachbauen wollen, mehr Bauteile als vorher, wenn
es funktionieren würde.
Danke
Joe L. schrieb:> Mal sehen ob damit die AC Fehler ausgemerzt sind.
Erste Nacht ohne jegliche Datenprobleme! Es scheint gelöst.
Ich hänge mal den source an falls jemand das auch probieren möchte. twi*
sind aus der Wire library - modifiziert für das schnellere Timing und
direktes Lesen/Schreiben ins RAM ohne callback. junkers.cpp hat die
Logik - 182 Zeilen also waren 50 doch etwas untertrieben.
Die Radio calls müssen natürlich ersetzt werden - zb. mit Serial. Esp32
+ Arduino + Pegelwandler wäre ein Ansatz, die Klippen des esp32 i2c zu
umschiffen.
Schönen Sonntag!
Joe L. schrieb:> 182 Zeilen also waren 50 doch etwas untertrieben
Es sind allerdings ein paar Zeilen Tiefpassfilter zum säubern der sehr
verrauschten Daten aus der Therme drin:
1
staticuint16_tvlTempX;
2
staticuint16_twwTempX;
3
if(!vlTempX)vlTempX=pBoiler->vlTemp2<<5;
4
if(!wwTempX)wwTempX=pBoiler->wwTemp2<<9;
5
vlTempX-=(vlTempX+16)>>5;
6
vlTempX+=pBoiler->vlTemp2;
7
wwTempX-=(wwTempX+256)>>9;
8
wwTempX+=pBoiler->wwTemp2;
9
avgBoilerState=*pBoiler;
10
avgBoilerState.vlTemp2=(vlTempX+16)>>5;
11
avgBoilerState.wwTemp2=(wwTempX+256)>>9;
Also eher 171 Zeilen. Jedenfalls bis auf die kleine Timingproblematik
wie vorhergesehen ein banales Projekt.
Peter* schrieb:> Vielleicht bleibst Du einfach mal bei der Wahrheit in allen Bezügen.>> Wer bitte wird das hier nachbauen wollen, mehr Bauteile als vorher, wenn> es funktionieren würde.
Darf ich Dich daran erinnern, dass dieser Ansatz genau Dein Ziel war?
Bauteile: 1 Moteino für ca 12 Euro und ein Pegelwandler
(https://www.amazon.de/dp/B082F6BSB5?psc=1&ref=ppx_yo2ov_dt_b_product_details)
für 50c. Statt ein unzuverlässiger BM1 für > 100 Euro, ein CAN Bus
Adapter und jede Menge Kopfschmerzen wegen Kommunikationsproblemen.
Wenn jemand sich die Zeit nimmt, das auf dem esp32 zum laufen zu
bringen, braucht man nur noch den, da er bei Open Drain Konfiguration 5v
tolerant ist.
Joe L. schrieb:> Darf ich Dich daran erinnern, dass dieser Ansatz genau Dein Ziel war?
Übrigens: Credit where credit is due, Peter ohne Deine Pionierarbeit bei
der Analyse der Funktionsweise des BM1 und insbesondere der Nutzung
eines geteilten i2c Rams wäre ich nie auf die Idee gekommen, das zu
implementieren. Danke für Deine Arbeit!
Angehängt ein Mitschnitt der Kommunikation zwischen Boiler und
Steuerung.
Eine ganze Menge habe ich noch nicht entschlüsselt. Das 8. und die
letzten beiden Bytes des Boilers (0x20 ...) enthalten Flags, die sich
verändern, wenn der Brenner startet oder stoppt. Im vorletzten Byte kann
man zb beim Zünden sehen, wie einzelne bits nacheinander angehen.
Ich vermute, dass man da noch Details wie Lüften, Zündung und evtl
Zustand 3 Wege Ventil auslesen kann.
Die beiden 0xff am Anfang und Ende des Controller Pakets (0x90 ...)
könnten den angeforderten Leistungslevel des Brenners bedeuten. Ich habe
meine Therme auf das Minimum (ca 10kw) fürs Heizen beschränkt, da das
auch bei -10 Grad mehr als genug ist. Warmwasser ist anders - wir haben
einen Speicher so dass auch niedrigere Leistungen zum Duschen möglich
wären. Zum Baden braucht man aber 100%.
50% Leistung sind deutlich effizienter als 100% zum Heizen. Zum
Warmwasser bin ich mir allerdings nicht sicher, weil der Wärmetauscher
viel besser bei hohen Temperaturen funktioniert.
Ich habe die 18-5 mit Warmwasserspeicher. Die Thermen mit
Durchlauferhitzer benutzen scheinbar die bytes 3 und 4 des Boilers für
max und ist Durchlauferhitzertemperatur. Mir ist noch nicht ganz klar,
wie die Steuerung herausbekommt um welches System es sich handelt.
Als es noch zu Überschreibungen des RAMs durch nicht erkannte
Lese/Schreibübergänge kam habe ich gesehen, dass die Therme dann anfing
statt auf 0x20 ... auf 0x30 ... und 0x40 ... zu schreiben. Da hat sich
wohl der Kaskadenmodus ausgelöst.
Hallo,
bin kein Sw_Werker, so das ich deine SW sofort verstehe noch möchte ich
mich auf ein anderes System einschießen. Zumal ich den Speicher belassen
möchte.
Deshalb passe ich erstmal, da mir einfach die Zeit in diesem Monat ganz
sicher fehlt.
Was mir allerdings auffiel ist die fehlende CAN-Bus_karte BM1, na klar.
Was wird denn als Gerät eingetragen, zu mal TA211 kein I2C mehr ist und
die 5V evtl. auch als Kennung benutzt wird. ohne Gerät?
> 50% Leistung sind deutlich effizienter als 100% zum Heizen....
Der Wärmetauscher verkalkt mit der Zeit und muss gereinigt oder ersetzt
werden.
> Ich habe die 18-5 mit Warmwasserspeicher
Der Aufbau ist doch anders, zu mindestens bei mir.(SW)
> dass die Therme dann anfing> statt auf 0x20 ... auf 0x30 ... und 0x40 ... zu schreiben.> Kaskadenmodus?
Ähnliches Verhalten habe ich beim Schreibtischtest BM1/TA250
festgestellt? Dann müssten auch die Adresse 90 schwimmen.
Glaube eher das hier der regelmäßige Handshake evtl. nicht stimmt.10/11
Datenmitschnitt, ungeachtet des Inhaltes herrscht hier eine sehr große
Unregelmäßigkeit?
Peter* schrieb:> Was mir allerdings auffiel ist die fehlende CAN-Bus_karte BM1, na klar.> Was wird denn als Gerät eingetragen, zu mal TA211 kein I2C mehr ist und> die 5V evtl. auch als Kennung benutzt wird. ohne Gerät?
Wenn die Therme anspringt dann probed sie auf den i2c Leitungen rum -
erst versucht sie 0x48, dann 0x50. Und so wie sie da einen Speicher
findet, der auf 0xfe - 0xff die richtigen Daten hat versucht sie den
Handshake zu beginnen. Dann denkt die Therme sie hätte einen BM1 - auch
wenn es statt dessen der Moteino ist.
Peter* schrieb:> Datenmitschnitt, ungeachtet des Inhaltes herrscht hier eine sehr große> Unregelmäßigkeit?
Ja - deswegen auch das Filtern: ich möchte nicht alle 200ms ein Paket
senden, sondern nur wenn sich die Daten ändern. Also filtere ich die
verrauschten Daten und sende nur wenn sich etwas ändert aber mindestens
alle 30s. Die Unregelmässigkeit wird durch den schnellen Abfall des
Vorlaufs nach ausschalten des Brenners verursacht (= häufige Pakete).
Übrigens habe ich gerade gemerkt dass der Moteino sogar mit 8mhz statt
der üblichen 16mhz läuft. Man braucht wirklich nicht viel CPU um den i2c
bus zu bedienen - jedenfalls mit clock stretching.
Hier ist diese Sequenz. Habe jetzt das 8. Byte raus - das ist VL Soll
von der Therme zurückgeliefert nach Begrenzung auf das eingestellte
Maximum. Danach gibt es 3 Schritte bis die Flamme brennt. Was immer die
sein mögen.
https://github.com/Winkelkatze/ESP32-Bare-Metal-AppCPU
Eine Core nur für i2c reservieren und dort die i2c Interrupt flags
pollen statt mit der miserablen interrupt latency des standard
frameworks zu arbeiten. Das könnte der 2x 240 MHz Core CPU helfen es mit
einem alten atmega328p als i2c slave aufzunehmen.
So - also für mich sind mit dem i2c RAM Simulator tatsächlich alle
Probleme behoben. Zur Feier des Tages habe ich mal eine schönere Graphik
mit Legenden angefertigt (Anhang). Es gibt keine Spikes mehr und keine
Fehler AC.
Die Steuerung fährt manuell das Takten der Therme indem sie den Boiler
durch Anforderung einer Vorlauftemperatur von 90 bzw. 20 Grad an- bzw.
ausschaltet. Dabei wird auf eine Abweichung der gefühlten Temperatur von
+- 0.15 C gegenüber der Solltemperatur von 19 C hingesteuert um die
Taktfrequenz und damit die Auskühlungsverluste zu senken.
Die Warmwasserbereitung wird ebenfalls manuell gesteuert: tagsüber wird
die Temperatur um die 37 Grad gehalten. Dusch-/Badetemperaturen müssen
über Handy angefordert werden.
Weicht die Wassertemperatur nicht zu stark von der gewünschten
Temperatur ab, so erfolgt die Erwärmung direkt um Anschluss an einen
Heiztakt ohne die Flamme erlöschen zu lassen. Ebenso wird nach jeder
Warmwasserbereitung ein Heiztakt gefahren. Diese Massnahmen dienen der
Minimierung der Auskühlzeiten des Kessels.
Ein Problem des Algorithmus ist, dass die Heizvorlauftemperatur während
einer Warmwasserbereitung nicht gemessen werden kann. Hier wird die
integrative Komponente der Steuerung pausiert, was zu Ungenauigkeiten
führt. Das werde ich in Zukunft durch eine Modellierung der
Vorlauftemperatur während der Warmwasserbereitung lösen.
Insgesamt bin ich jetzt ziemlich zufrieden mit dem System. Nächster
Schritt: Einbindung der digitalen Thermostate und automatische Übernahme
der Vorlauftemperatursteuerung vom Raum mit dem derzeit höchsten
Heizbedarf. Dabei soll auch der hydraulische Abgleich komplett aus dem
Heizsystem genommen werden und durch einen dynamischen hydraulischen
Abgleich mithilfe der digitalen Thermostate ersetzt werden.
Leider kann die Heizleistung meiner Therme nicht direkt über i2c
gesteuert werden. Das wäre von Vorteil für Schnellaufheizung selten
genutzter Räume. Vielleicht ist das aber über die Sollvorlauftemperatur
machbar.
H.Joachim S. schrieb:> Das Peterle eiert ja immer noch hier rum :-)
Sonst leider wohl keiner mehr :). Naja die Thermen sind auch uralt. Das
Plastik zerfällt zu Staub wenn man mal stärker drauf drückt.
Hallo,
oh Mann..., das verrückte Pferd, wie eh.. und jeh.., ohne soziale
Kompetenz.
@Thorsten L.
> Plastik zerfällt zu Staub
kann ich nicht bestätigen.
> keine> Fehler AC.
du hast doch auch kein Gerät angeschlossen, oder ist im Service ein
Gerät eingetragen.
Übrigens, bitte nachlesen, in Deutschland nicht zulässig.
> Dabei soll auch der hydraulische Abgleich komplett aus dem> Heizsystem genommen werden und durch einen dynamischen hydraulischen> Abgleich mithilfe der digitalen Thermostate ersetzt werden.
Das, mit dem Hydraulischen Abgleich würde ich mir nochmals durchlesen.
> Leider kann die Heizleistung meiner Therme nicht direkt über i2c> gesteuert werden.
Du musst auch die Neugier entwickeln, diese Möglichkeit zu finden.
Du hast die Adresse 0x48 gefunden, was steht da hinter???
Ein Textdisplay hat die Möglichkeit den Service einzustellen!!!
Es hat die I2C Adresse 0x51 und hat ein doppelt so großen Speicher.
!! Kennt deine Therme diese Adresse???
"Es gibt keine direkte Beschreibung des Textdisplay's, --->in Therme mit
Display"
Peter* schrieb:>> keine>> Fehler AC.>> du hast doch auch kein Gerät angeschlossen, oder ist im Service ein> Gerät eingetragen.>> Übrigens, bitte nachlesen, in Deutschland nicht zulässig.
Häh? Mein Problem war doch dass ich periodisch diese Fehler AC mit VL
Temp Spikes bekam wenn ich die Therme per CAN Bus gesteuert habe. Die
18-5 kann einfach nicht zuverlässig mit meiner BM Version. Das ist jetzt
gelöst mit dem I2C Ansatz.
Peter* schrieb:> Das, mit dem Hydraulischen Abgleich würde ich mir nochmals durchlesen.
Nee - das Konzept ist schon hinreichend bekannt. Der statische
hydraulische Abgleich stellt ja die Durchflussmengen so ein, dass bei
maximaler Heizlast alle Zimmer genau die Wassermengen bekommen, die die
Zielzimmertemperatur herstellt.
Das ist aber nicht das beste für den allgemeinen Fall. Sagen wir alle
Zimmer sind abgeregelt und ich will nur mein Arbeitszimmer warm
bekommen. Dann möchte ich den maximalen Wassertransport durch die
Heizung dort damit die Therme ihre Wärme los wird (Stichwort
Kuhschwanzheizung). Also muss die Drosselung überall raus und statt
dessen über die Ventile gemacht werden.
Peter* schrieb:> Du musst auch die Neugier entwickeln, diese Möglichkeit zu finden.> Du hast die Adresse 0x48 gefunden, was steht da hinter???>> Ein Textdisplay hat die Möglichkeit den Service einzustellen!!!> Es hat die I2C Adresse 0x51 und hat ein doppelt so großen Speicher.> !! Kennt deine Therme diese Adresse???
Ich habe nur die i2c ram addressen 0x90 und 0x9e versucht. Die haben
normalerweise 0xff und scheinen deshalb prädestiniert die Leistung zu
übermitteln. Aber damit kann ich die Therme nicht regeln.
0x51 fordert meine Therme nicht an. 0x48 könnte natürlich was sein -
aber ohne das Protokoll belauschen zu können habe ich da keine Chance.
Hallo,
es ist schon lange her das ich mich mit dem Hydraulischen Abgleich
auseinandergesetzt habe und zwar bei der Plan meiner Heizung. Bei
Inbetriebnahme brauchte ich keinen Heizkörper drosseln und zwar habe ich
4 Stränge die alle druckgesteuert werden und bis heute fehlerfrei trotz
Junkers Uraltpumpe funktionieren.
> Nee - das Konzept ist schon hinreichend bekannt. Der statische> hydraulische Abgleich stellt ja die Durchflussmengen so ein, dass bei> maximaler Heizlast alle Zimmer genau die Wassermengen bekommen, die die> Zielzimmertemperatur herstellt.
Nein, Zielzimmer (?)... woher kommt das denn, es muss heißen, die der
einzelne Raum benötigt. Hier steht das Gesamtobjekt im Mittelpunkt.
> Das ist aber nicht das beste für den allgemeinen Fall. Sagen wir alle> Zimmer sind abgeregelt und ich will nur mein Arbeitszimmer warm> bekommen.
Wenn der Abgleich richtig durchgeführt wurde wird dieser Raum warm, das
ist doch das Paradebeispiel des Abgleichs. Aber,... deine alte
Heizungspumpe wird Dir evtl. den Strich durch die Rechnung machen, weil
sie damit nicht klar kommt. Habe ich schon mal erwähnt.., es wird (es
muss) eine Hocheffiziente Pumpe (300+) eingebaut werden, im Fehlerfall.
Seit bei mir e_Ventile in den Heizkörpern verbaut sind findet auch bei
mir eine ständige Taktung statt. Sowas kann man nur lösen mit
Wassermenge und Mischkreis.
Die VL Temperatur soweit herunterfahren, das das Ventil die eingestellte
Temperatur nie erreicht und somit nie schließt ist doch nicht
zielführend.
Aber das haben wir schon mal durchgekaut.
Zurück auf die Heizleistung, natürlich ist hiermit die max. Heizleistung
gemeint und nicht Möglichkeit Einflussnahme auf die Regelung der
Leistung zu nehmen (PWM). gottseidank
Bei 10kW ist das nicht mehr FF, sondern evtl. max
Peter* schrieb:> Seit bei mir e_Ventile in den Heizkörpern verbaut sind findet auch bei> mir eine ständige Taktung statt. Sowas kann man nur lösen mit> Wassermenge und Mischkreis.
Ja das ist doch der Punkt. Du willst die Wassermenge bei Betrieb nur
einer Heizung in einem Raum nicht auf das gleich Mass beschränken, was
nötig ist um gleichmässige Erwärmung aller Zimmer beim Betrieb aller
Heizungen zu erreichen.
Und mit digitalen Ventilen kann man das eben prinzipiell
situationsabhängig steuern.
Hallo,
doch,.. wo liegt das Problem, meinen Heizungkörper eine halbstunde
vorher zu starten. Es können mehrere m3/h Heizungswasser fließen.
Ich sehe nur meine Heizung, die Wassermenge ist der Pufferspeicher.
Hiermit ist der kontinuierliche betrieb der Heizung gewährleistet und
nicht das Takten. Das Mischen ist losgelöst vom erzeugen der Wärme. Je
nach Größe des Puffers ist die Heizung dann 2mal in 24Stunden aktiv.~
Das ist kein Abgleich, sondern Du steuerst das Wasser in den
Rohrleitungen. Der Hydraulische Abgleich ist der Versuch, der in Waage
setzen.
Peter* schrieb:> Ich sehe nur meine Heizung, die Wassermenge ist der Pufferspeicher.> Hiermit ist der kontinuierliche betrieb der Heizung gewährleistet und> nicht das Takten. Das Mischen ist losgelöst vom erzeugen der Wärme. Je> nach Größe des Puffers ist die Heizung dann 2mal in 24Stunden aktiv.~
Klar ein Pufferspeicher hilft - hat aber den Nachteil dass Du
Auskühlverluste hast. Und das viele keinen haben. Wenn ich meinen
Warmwasserspeicher auf 60 C stelle statt auf 37 C ist es im Bad (wo der
steht) schön warm aber das kostet mich ca 12 kWh am Tag.
Die Frage ist was ist der beste Ansatz, wenn man wie viele keinen
Speicher aber eine überdimensionierte Therme hat. Und ich denke die
Lösung ist ein dynamischer hydraulischer Abgleich: so dass zum aktuellen
Moment zum einen alle Zimmer die Wärmemenge bekommen, die sie gerade
brauchen. Und das zweitens der Volumenstrom durch alle Heizungen bei
Einhaltung dieses Gleichgewichts maximiert wird, so dass die
Vorlauftemperatur und die Taktfrequenz minimiert werden kann.
Unter diesen Umständen kann die Heizung dann mit niedriger Frequenz
Takten und die Heizungsventile brauchen während des Taktes nicht
verstellt zu werden. Meine Heizung taktet zur Zeit ungefähr 1x pro
Stunde mit meiner raumgesteuerten Regelung.
Peter* schrieb:> Das ist kein Abgleich, sondern Du steuerst das Wasser in den> Rohrleitungen. Der Hydraulische Abgleich ist der Versuch, der in Waage> setzen.
Doch - es ist ein dynamischer Abgleich: die Waage halten unter den zur
Zeit bestehenden Bedingungen.
Hallo,
Thorsten L
> Klar ein Pufferspeicher hilft...
ja, der Wärmeverlust [Energieeffizienz A...D] ist ein Thema des
Geldbeutels und der Größe, aber bei weitem kein Grund der Ablehnung.
Außerdem die Möglichkeit der Hybridheizung und die [wird] kommt ja.
> 60 C stelle statt auf 37 C...
es ist eine Einstellungssache [ECO...gewollte Hysterese] oder ein
Sensorfehler
> schön warm aber das kostet mich ca 12 kWh am Tag...
Hoffe nicht der Verlust und Du kannst auch kalt duschen, baden... dann
weißt Du was 12KW wert sind.:-). Wärme...Verluste hast Du dadurch nicht,
warme Luft im Bad ist immer gut für eine hohe Aufnahme von Feuchtigkeit
[sonst Betauung], Lüften weg. 12KW ~1m3/24h Gas. Wir 120l Sommer 0,3 bis
0,5m3, Winter 0,7 bis 1m3, natürlich abhängig von der
Wassermenge.[->Wärmerechner]
> eine überdimensionierte Therme hat...
Das ist das eigentliche Problem der alten Heizungen 10Kw ist bei mir
Schluss. Ab da wird der Siphon ständige bewässert.--> also
Pufferspeicher und dann aus. Auch in Wohnungen möglich.
> dynamischer hydraulischer Abgleich...
nun vielleicht nochmals wiki durchlesen. Was machst Du, wenn alle
Heizkörper fordern? Dann ist dein System nicht abglichen! Wenn Räume
Temperaturregelung benötigen. Dein Heizkörperventil ist doppelt belegt
und woher bekommst du die Hydraulischen Werte zum Einstellen des
Ventils. Hier geht es um Drücke Volumenströme und um Temperatur.
Peter* schrieb:>> 60 C stelle statt auf 37 C...>> es ist eine Einstellungssache [ECO...gewollte Hysterese] oder ein> Sensorfehler>>> schön warm aber das kostet mich ca 12 kWh am Tag...>> Hoffe nicht der Verlust und Du kannst auch kalt duschen, baden... dann> weißt Du was 12KW wert sind.:-). Wärme...Verluste hast Du dadurch nicht,> warme Luft im Bad ist immer gut für eine hohe Aufnahme von Feuchtigkeit> [sonst Betauung], Lüften weg. 12KW ~1m3/24h Gas. Wir 120l Sommer 0,3 bis> 0,5m3, Winter 0,7 bis 1m3, natürlich abhängig von der> Wassermenge.[->Wärmerechner]
Na klar sind das Verluste. Mein Bad muss nicht den ganzen Tag >23 C warm
sein. Und im Winter habe ich insgesamt eher zu wenig als zu viel
Luftfeuchtigkeit.
Schau Dir den unteren Chart in der angehängten Graphik an - da kannst Du
sehen wie schnell der Speicher auskühlt. Bei 60 C noch viel schneller.
> nun vielleicht nochmals wiki durchlesen. Was machst Du, wenn alle> Heizkörper fordern? Dann ist dein System nicht abglichen! Wenn Räume> Temperaturregelung benötigen. Dein Heizkörperventil ist doppelt belegt> und woher bekommst du die Hydraulischen Werte zum Einstellen des> Ventils. Hier geht es um Drücke Volumenströme und um Temperatur.
Irgendwie geht Dir scheinbar der Wille zum lesen/verstehen ab. Der
Wärmebedarf in unterschiedlichen Zimmern ist nicht immer relativ
konstant - deswegen ist ein statischer Abgleich nicht optimal. Andere
sind auch schon auf die Idee gekommen. Lies Dir vielleicht mal
https://www.danfoss.com/de-de/markets/buildings-commercial/dhs/hydronic-balancing-and-control/hydronic-balancing-static-dynamic-automatic/#tab-automatic
durch.
Peter* schrieb:> Hoffe nicht der Verlust
Schau es Dir an. Das war der WW Verbrauch mit ww setpoint auf 60 C:
23-01-08, 30.89
23-01-09, 23.47
23-01-10, 46.38
23-01-11, 28.23
23-01-12, 43.25
23-01-13, 36.54
Angaben in kw.
Hier ist mit ww setpoint auf 37 C und 45 C on demand zum Duschen, 60 C
zum baden:
23-03-04, 34.30
23-03-05, 9.43
23-03-06, 10.15
23-03-07, 14.45
23-03-08, 10.98
Der Unterschied ist schon frappierend.
Hallo,
nun, das die Heizung und der WW_Behälter nicht nur sehr teuer waren als
auch schlecht isoliert waren bzw. sind, brauchen wir nicht zu
diskutieren. Da stimme ich Dir voll zu.
> Irgendwie geht Dir scheinbar der Wille zum lesen/verstehen ab.
Ach...,
sorry, aber Blödsinn... "statischer" Abgleich mal weiterdenken und
suchen.
meine Heizung ist 15+Jahre alt und ich habe von Danfoss das damalige
"automatische" Strangregulierungssystem (diff-druck) eingebaut und
eingestellt. Wenn Du mal etwas mehr lesen würdest außer die Werbung über
das neue System, in dem alle anderen Systeme schlecht ja sogar falsch
beschrieben werden. Dann würdest Du, die Beurteilung meines
Nachfolge_Systems (gleicher Aufbau) finden mit "ausgezeichnet" und Du
würdest auch finden den Hinweis das dein bevorzugtes System nicht ohne
herkömmlichen Abgleich betrieb werden sollte und schaffe Dir alles
Pumpen mit Kommunikation und Sensoren an, die Dir die Daten senden.
Ich muss es wohl gelesen als auch verstanden haben!!
Hallo,
wenn deine Heizung so unwirtschaftlich ist,
vielleicht solltest Du eher versuchen eine neuere Heizung (gebraucht) zu
bekommen, die die
Leistungs_Modellierung auf 2-3 kW beherrscht. Statt viel Geld in eine
neue Pumpe z.B.: zu investieren die Junkers nicht gestattet usw.
Aber Du hast recht, ist egal.
Peter* schrieb:> wenn deine Heizung so unwirtschaftlich ist
Die Therme ist super und nicht unwirtschaftlich. Habe gar keine Probleme
damit. Klar könnte ich evtl ein paar Prozent mit einer stärker
modulierenden sparen. Aber ich miete und allein die Einbaukosten wären
immens.
Nee - es ist ideal: ich habe Probleme, die ein grosser Anteil von Leuten
mit älteren (und auch teilweise neueren) Thermen haben. Neue Thermen
dürfen bald nicht mehr eingebaut werden. Die Probleme lassen sich mit
Software weitgehend lösen -> also für viele Leute interessant.
Wenn's so gut wird wie ich denke, gibts also auch einen Markt dafür,
falls ich darauf Lust hab.
Übrigens: Wochenendhütte mit ATAG 5000 HR genau das gleiche Problem.
Megaüberdimensioniert und taktet wie verrückt. 20kw und moduliert runter
auf 6 meine ich. Aber startet immer auf voller Leistung und regelt dann
runter - bei hohen Aussentemp zu spät und die Takte sind keine Minute
lang. Die ist als nächstes dran.
Hallo,
> Aber startet immer auf voller Leistung und regelt dann> runter
Ob es die volle Leistung ist, ist mir nicht bekannt, aber das Vorgehen
ist durch aus logisch, um eine sichere Zündung zu gewährleisten.
> Neue Thermen> dürfen bald nicht mehr eingebaut werden
Aber noch!, deshalb der Hinweis... und die Preise werden auch bei
Klein... fallen.
Ein Ventil aus Systemdaten zusteuern sagt nichts über die machbare
Funktionsweise aus. Ich sehe aber schon ein Problem, die
Batteriesteuerung. Die können gar nicht jede Betriebsänderung mit
machen. Einmal im Monat Batteriewechsel?
Es gab auch mal, vor Jahren eine Zukunftsplanung, die besagte das sich
jeder Raum die erforderlich Wärme durch Kleinpumpen sich selbst holt.
Nie wieder davon was gehört.
Das wird auch nicht mein Thema.
Thorsten L. schrieb:> H.Joachim S. schrieb:>> Das Peterle eiert ja immer noch hier rum :-)>> Sonst leider wohl keiner mehr :).
Doch doch, ich lese hier immer mal wieder interessiert mit, und die
Therme via i2c anzusteuern klingt sehr interessant, v.a. nachdem es mit
der (sw-) CAN-Lösung hakt, und ich sowieso vor dem "Problem" stehe, dass
die Gesamtheizungsanlage demnächst noch ein paar Komponenten mehr hat
wie nur die Therme (Pufferspeicher+Solarthermie, zwei Wärmetauscher für
WW+Heizungsunterstützung und so weiter...).
Dauert nur noch etwas, bis ich dazu kommen werde, das intensiver zu
beleuchten!
Hallo,
I2C ist eine Kommunikation über kurze Distanz. Über längere Distanz ist
der Can-Bus um vieles besser.
HSM und HMM haben kein I2C, sind also nur über Can-Bus ansteuerbar. Ein
System mit Pufferspeicher usw. mit I2C ist wohl ~ eher nicht umsetzbar,
noch zweckmäßig.
Hier steht wohl noch die Suche nach dem direkten Einstieg ohne
überschreiben der CAN-Bus Befehle im Vordergrund.
Man muss schon nicht mehr Heizungsanlage sagen sondern Hausanlage.
Inzwischen kommt bei mir sogar ein Pufferspeicher außerhalb des Hauses
in Frage.
Viel Arbeit und wenig Zeit.
Peter* schrieb:> Ein Ventil aus Systemdaten zusteuern sagt nichts über die machbare> Funktionsweise aus. Ich sehe aber schon ein Problem, die> Batteriesteuerung. Die können gar nicht jede Betriebsänderung mit> machen. Einmal im Monat Batteriewechsel?
Na die hr20 stellen sich doch sowieso ständig aktiv ein.
Batterielaufzeit soll trotzdem > 1 Jahr sein. Und mit dynamischem
Abgleich wird es weniger: während des Taktens müssen die Ventile dann
nicht geregelt werden - es sei denn der relative Wärmebedarf ändert
sich.
Hab noch ein neues Feature: Abschalten der Pumpe während der Brenner aus
ist. Siehe Anhang. Das wird vor allem in der Übergangszeit was bringen
wenn die Takte längere Auszeiten haben.
Peter* schrieb:> HSM und HMM haben kein I2C, sind also nur über Can-Bus ansteuerbar. Ein> System mit Pufferspeicher usw. mit I2C ist wohl ~ eher nicht umsetzbar,> noch zweckmäßig.
Richtig. Wenn andere Can Bus Teilnehmer mitspielen wird der Can Bus
benötigt. Man könnte trotzdem den BM1 ersetzen und i2c mit der Therme
sprechen solange man zusätzlich ein Can Bus Modul am Mikrocontroller für
Kommunikation mit der Peripherie hat. Aber dann ist es nicht mehr so
schön simpel.
Peter* schrieb:> ja, der Wärmeverlust [Energieeffizienz A...D] ist ein Thema des> Geldbeutels und der Größe, aber bei weitem kein Grund der Ablehnung.
Hast Du mal gemessen, wie gross die Bereitschaftsverluste Deines
Speichers sind? Für die Wirtschaftlichkeit müsste man diese ja dem
Auskühlverlust der Therme beim Takten gegenüberstellen (jedenfalls wenn
der Speicher nicht sowieso zum Hybridheizen gebraucht wird).
Mein WW Speicher verliert schon sehr viel. Vielleicht sollte ich da mal
bessere Isolierung anbringen. Jetzt im Winter mit der Bedarfsanforderung
ist es kein Problem, da der Speicher einfach das Bad heizt. Aber im
Sommer ist das reine Verschwendung.
Btw was ich in diesem Zusammenhang richtig cool finde ist
http://www.rio12.com/rio9/programme/Book_of_Proceedings/9_ST_Buchholz.pdf.
Mit chemischer Wärmespeicherung könnte man sogar Solarenergie vom Sommer
in den Winter transportieren - ohne Verluste.
Und die Freigabe der Wärme bindet Feuchtigkeit. Dh ideal um im Winter
die Wochenendhütte vor Einfrieren und Schimmel in einem schützen.
Hallo,
> Na die hr20 stellen sich doch sowieso ständig aktiv ein.> Batterielaufzeit soll trotzdem > 1 Jahr sein. Und mit dynamischem> Abgleich wird es weniger: während des Taktens müssen die Ventile dann> nicht geregelt werden - es sei denn der relative Wärmebedarf ändert> sich.
Was ist denn HR20, nicht etwa der von Honeywell. Habe hier noch 5x HR40,
nie eingebaut. Warum, weil sie die Temperatur (am | in der Nähe des
Heizkörper) messen bzw. !sogar! über separates Messkabel (opt.) messen
konnten.
Habe mich damals, weil günstig (gleichen Preis HR40) für die von ELV /
Conrad bzw. schließlich von Lifetec entschieden.
Steuergerät/e-Ventil/Fenstersignal (20Euro) 868 MHz. heute Standard.
Steuereinheit sendet alle 2 Minuten die Sollöffnung, aber bevor der
Motor angesteuert wird vergehen (Diagramm 5->8%) z.B: 90min) natürlich
je nach Temperatur und Raum (kältest beheizte Raum).
Da ist nichts ständig aktiv!!
> Abschalten der Pumpe während der Brenner aus> ist.
Ja und... dein ganze System steht, die Zeit der Schwerkraftheizung kommt
vielleicht wieder aber so nicht. Vielleicht sogar als grobfahrlässig
einzustufen bei Schaden an der Heizung. -->Bosch/Junkers
> Man könnte trotzdem den BM1 ersetzen und i2c mit der Therme> sprechen solange man zusätzlich ein Can Bus Modul am Mikrocontroller für> Kommunikation mit der Peripherie hat.
Peter*
> eher nicht umsetzbar,> noch zweckmäßig.> Hast Du mal gemessen, wie groß die Bereitschaftsverluste Deines> Speichers sind? Für die Wirtschaftlichkeit müsste man diese ja dem> Auskühlverlust der Therme beim Takten gegenüberstellen (jedenfalls wenn> der Speicher nicht sowieso zum Hybridheizen gebraucht wird).
Nun, erstmal ist das eine Planung, ich hoffe dies in diesem Jahr
umsetzen zu können. (Preis, Lieferzeiten sehen aber hier sehr schlecht
aus.)
Aber selbstverständlich, es kommt auf die Größe der Einheiten und die
Isolierung an. Ein Beispiel Energie[B] 1000L ~90W/h; 300L [A] ~40-50W/h
Das brauche ich nicht gegenüberstellen, ich weis es einfach das es
anders unwirtschaftlich ist!!
Es ist E-Solar als auch Wärmepumpe ... bzw. Hybrid in Zukunft geplant.
> Mit chemischer Wärmespeicherung könnte man sogar Solarenergie vom Sommer> in den Winter transportieren - ohne Verluste
Sicher..., wer es glaubt ohne Verlust....
Es werden schon riesige Wasserspeicher gebaut die ähnlich genutzt werden
sollen.
Es sollte auch mal eine Pipeline mit Flüssigkeit Metall errichtet
werden...um Energie zu transportieren.
Kann ich alles nicht nutzen, habe Strom 49 Cent/kW und Gas 19,15
Cent/KW.
> Was ist denn HR20, nicht etwa der von Honeywell. Habe hier noch 5x HR40,> nie eingebaut. Warum, weil sie die Temperatur (am | in der Nähe des> Heizkörper) messen bzw. !sogar! über separates Messkabel (opt.) messen> konnten.
Genau die von Honeywell ja. Und zwar hauptsächlich weil die bereits
komplett reverse engineered sind (https://github.com/OpenHR20/OpenHR20).
Wie gesagt habe ich schon ein selbst entwickeltes Home automation System
basierend auf dem atmega 328p mit rfm69 Radio. Komplett mit Wireless
bootloader usw. Die hr20 benutzen den atmega 169p - da kommt dann ein
rfm69 ran und ich kann dann meine Infrastruktur nutzen - wie auch schon
beim BM1 Ersatz. Deswegen geht das dann bei mir alles so schnell.
Natürlich bekommt jeder größere Raum zwei Thermometer: eins für Lufttemp
und eins für Strahlungstemp. Aber auch die eingebauten Thermometer
funktionieren nicht schlecht - die Arbeiten mit einem Offset um die Nähe
zum Heizkörper auszugleichen.
>> Habe mich damals, weil günstig (gleichen Preis HR40) für die von ELV /> Conrad bzw. schließlich von Lifetec entschieden.> Steuergerät/e-Ventil/Fenstersignal (20Euro) 868 MHz. heute Standard.> Steuereinheit sendet alle 2 Minuten die Sollöffnung, aber bevor der> Motor angesteuert wird vergehen (Diagramm 5->8%) z.B: 90min) natürlich> je nach Temperatur und Raum (kältest beheizte Raum).>> Da ist nichts ständig aktiv!!
Genauso wird es bei mir auch funktionieren - aber besser: ich kenne ja
die Vorlauftemperatur und das Taktverhalten und kann deswegen viel
besser ansteuern. In meiner jetzigen Steuerung folgt die Lufttemperatur
der Vorlauftemperatur mit vielleicht 4 Minuten Verzögerung. Es ist also
viel zu spät wenn man es daran festmacht.
>>> Abschalten der Pumpe während der Brenner aus>> ist.>> Ja und... dein ganze System steht, die Zeit der Schwerkraftheizung kommt> vielleicht wieder aber so nicht. Vielleicht sogar als grobfahrlässig> einzustufen bei Schaden an der Heizung. -->Bosch/Junkers
Nee - ich zirkuliere noch 5 min nach dem ausschalten und hab dann 6
Minuten aus, 3 an usw. Das machen einige kommerzielle Regelungen auch
so. Das ist schon ok. Stelle es Dir einfach wie eine geregelte Pumpe vor
und sei nicht immer so negativ.
>>> Man könnte trotzdem den BM1 ersetzen und i2c mit der Therme>> sprechen solange man zusätzlich ein Can Bus Modul am Mikrocontroller für>> Kommunikation mit der Peripherie hat.>> Peter*>> eher nicht umsetzbar,>> noch zweckmäßig.
Umsetzbar: absolut ja. Zweckmäßig? Hängt eben davon ab ob der BM1
korrekt mit der eigenen Therme funktioniert. Bei mir war das nicht der
Fall deswegen musste ich ihn ersetzen.
> Aber selbstverständlich, es kommt auf die Größe der Einheiten und die> Isolierung an. Ein Beispiel Energie[B] 1000L ~90W/h; 300L [A] ~40-50W/h>> Das brauche ich nicht gegenüberstellen, ich weis es einfach das es> anders unwirtschaftlich ist!!>> Es ist E-Solar als auch Wärmepumpe ... bzw. Hybrid in Zukunft geplant.
Hängt natürlich auch noch mit der Temperatur zusammen. Und was dann die
realen Verluste sind ggü. dem versprochenen. Wie gesagt mit hybrider
Heizung - klar da macht es Sinn. Aber nur um das Takten zu verringern -
20 Takte am Tag vs 2 mit Speicher plus Speicherverluste. Ich glaub nicht
dass
man da besser mit Speicher fährt.
>>> Mit chemischer Wärmespeicherung könnte man sogar Solarenergie vom Sommer>> in den Winter transportieren - ohne Verluste>> Sicher..., wer es glaubt ohne Verlust....
Na das besondere ist dass die Speicherung chemisch durch die Entfernung
von Wasser aus der Lösung passiert. Du hast also keine Abkühlverluste
und kannst deutlich mehr pro Volumen speichern.
>> Es werden schon riesige Wasserspeicher gebaut die ähnlich genutzt werden> sollen.>> Es sollte auch mal eine Pipeline mit Flüssigkeit Metall errichtet> werden...um Energie zu transportieren.
Mann - Du bist aber auch echt der typische Neinsager. Ist Dir schon mal
aufgefallen dass Du überall nur Probleme siehst und keine Chancen? Alles
was von anderen kommt ist für Dich nicht machbar, fahrlässig, idiotisch
und lächerlich. Versuch doch mal etwas positiver ans Leben ranzugehen!
>> Kann ich alles nicht nutzen, habe Strom 49 Cent/kW und Gas 19,15> Cent/KW.
Ich empfehle neue Verträge abzuschließen. Habe gerade Gas mit 10.5 c/kWh
auf zwei Jahre abgeschlossen.
Thorsten L. schrieb:> Warum, weil sie die Temperatur (am | in der Nähe des>> Heizkörper) messen bzw. !sogar! über separates Messkabel (opt.) messen>> konnten.
Btw - ich denke Raumtemperatursensoren kombiniert mit den Sensoren in
der Nähe der Heizung sind eigentlich optimal: die Thermometer in der
Nähe der Heizung geben schnell Information über die Richtung der
Veränderung (muss nicht erst auf Konvektion zum Raumthermometer warten)
und das Raumthermometer gibt die korrekte absolute Temperatur. Ich plane
beides einzusetzen - plus Vorlauftemperatur.
Wenn alles so funktioniert wie ich plane dann wird an allen Ventilen der
aktuell passende hydraulische Abgleich eingestellt und dann bei
konstanter Ventilstellung getaktet. So hat man dann in allen Räumen die
gleiche minimale Schwankung um das Ziel der gefühlten Zimmertemperatur.
Das grösste Problem bei standalone Thermostaten ist die
Schnellaufheizung eines Zimmers. Dafür muss die Vorlauftemperatur stark
angehoben werden. Und wenn die Raum/Thermostatsensoren in den anderen
Zimmern das merken ist es bereits zu spât.
Ich kann in einem Radiopaket neue Ventilstellungen gleichzeitig an alle
Ventile schicken und die bereits richtig auf die neue Vorlauftemperatur
einstellen bevor die Zimmertemperatur Überschiesst.
Hallo,
> Mann - Du bist aber auch echt der typische Neinsager. Ist Dir schon mal> aufgefallen dass Du überall nur Probleme siehst und keine Chancen? Alles> was von anderen kommt ist für Dich nicht machbar, fahrlässig, idiotisch> und lächerlich. Versuch doch mal etwas positiver ans Leben ranzugehen!
Ach....wie war das neulich mit der Danksagung I2C noch...das war
lächerlich.
Probleme wo Probleme sind und wo eine Möglichkeit existiert kann man sie
auch erwähnen so lange sie einfach umsetzbar sind. Aber das Rad neu
erfinden werde ich ganz sicher nicht. Auch zurück in 80er und hierum
basteln obwohl es fertige Einzelteile zu kaufen sind, neee. Und ich bin
noch jemand der Smart Home weit von sich schiebt bzw. geschoben hat!!
HR20 und die neusten e-Ventil kein Vergleich neee.
Ich habe fast 2 Jahrzehnte im Versuch bzw. der Produktvalidierung im
Automotivbereich gearbeitet und ich glaube ein bisschen ist hängen
geblieben. Und da wurde alles auf 15 Jahre getestet, sicher ist sicher.
Beleidigungen sind ganz sicher nicht erstmalig aus meiner Feder, aber
Leute die glauben sie haben die Weisheit mit Löffeln zu sich genommen
gibt es überall und konstruktive Kritik sollte hilfreich sein.
Aber ich denke dein Vorwurf ist unbegründet!!!
Aber ich bin ehrlich, bin wirklich gespannt ob ich das noch verstehe was
Du da baust bzw. wie Danfoss das aufgebaut hat? Ich kenne nicht mal das
Prinzip. Eine Hydraulik ohne zu messen?
Wenn ich mal darauf zurückkommen darf:
Thorsten L. schrieb:>>> Man könnte trotzdem den BM1 ersetzen und i2c mit der Therme>>> sprechen solange man zusätzlich ein Can Bus Modul am Mikrocontroller für>>> Kommunikation mit der Peripherie hat.>>>> Peter*>>> eher nicht umsetzbar,>>> noch zweckmäßig.>> Umsetzbar: absolut ja. Zweckmäßig? Hängt eben davon ab ob der BM1> korrekt mit der eigenen Therme funktioniert. Bei mir war das nicht der> Fall deswegen musste ich ihn ersetzen.
Der Gedanke, den BM1 zu ersetzen gefällt mir sehr gut. Meine BM1 (bzw.
"2") funktionieren zwar, aber es gelingt mir nicht, die TA250 durch
Dave's Code auf einem ESP32 zu ersetzen, _u.a._ weil die damit
gelieferten Pegel nicht passen (evtl. ist was an der Hauptplatine
kaputt).
Aber selbst wenn: Für einen "Notbetrieb" mit TA250 müßte man umstöpseln,
und das ist für meinen Anwendungsfall der Haken bei der Sache, da nicht
(Familien-Mit-) Userfreundlich.
Ein Setup, bei dem der TA250 für die "defaults" weiter aktiv bleibt,
aber von einem BM1-Ersatz (befehlsmäßig) ignoriert wird, solange auf
einer anderen Schnittstelle regelmäßig Anweisungen kommen, wäre mir im
Moment sehr viel sympatischer. Das hätte auch den Vorteil, dass man ggf.
unbekannte Telegramme "durchstellen" könnte. Der TA sollte zufrieden
sein, wenn er regelmäßig Infos aus der Therme bekommt sowie eine
Außentemperatur. Dafür einen DS18B20 vorzusehen, wäre aber wohl kein
großes Ding, oder?
Hallo,
Jörg R. schrieb:>>>>>> Peter*>>>> eher nicht umsetzbar,>>>> noch zweckmäßig.
Hier, ist der "richtige" Zusammenhang und sicher ist es bei "nur" der
Therme machbar, es ist ja aus meiner Feder und Thorsten hat sich die
Arbeit gemacht und es umgesetzt.
Peter* schrieb:> HSM und HMM haben keinen I2C, sind also nur über Can-Bus ansteuerbar. Ein> System mit Pufferspeicher usw. mit I2C ist wohl ~ eher nicht umsetzbar,> noch zweckmäßig.
ein bisschen mehr lesen.
> _u.a._ weil die damit> gelieferten Pegel nicht passen
Nun, u.a ist ein weites Feld?...welcher Pegel?
> Aber selbst wenn: Für einen "Notbetrieb" mit TA250 müßte man umstöpseln,> und das ist für meinen Anwendungsfall der Haken bei der Sache, da nicht> (Familien-Mit-) Userfreundlich.
Dave's Programm fließt doch über den Can-Bus in das System ein und hebt
den TA250 über die SW aus!
Schalte ein Relais (2.facher Wechsler Can High/Low) über die
Schließerkontakte vor deinem Can-bus Anschluss ESP32 und schalte es ein
per SW, im Notfall bleibt es aus. ---> TA... ist im Notfall aktiv!!
> Ein Setup, bei dem der TA250 für die "defaults" weiter aktiv bleibt,....
Sorry,
nicht nur TA... Befehle ignorieren dann auch noch verschiedene
Schnittstellen. Bosch/Junkers macht es über Kartenwechsel. z.B.: Ta211
/Ta250 /RAM.
Wenn Du eine Lösung findest ich höre Dir ganz sicher zu..., aber
wahrscheinlich kommt erst der Weltfrieden, sorry,... konnte mir jetzt
nicht verkneifen und den! können wir gebrauchen!
Beim Weltfrieden sind wir uns einig, und zu meinen Pegeln hatte ich hier
schon mal was geschrieben (Stichwort 30V statt 24V kommen von der
Therme, den CAN-Teil spare ich mir, denn vermutlich ist einfach meine
hauptplatine teilweise hinüber).
Und ja, mag sein, dass mein Verständnis zum Ganzen - nennen wir es
verbesserungsfähig - ist.
Jedenfalls: Dave's firmware hatte mal bei mir funktioniert, aber wenn
man da den CAN-Bus vom TA nicht wirklich wegschaltet, dominiert die TA
und der ESP lauscht nur. Seit die 30V da sind, klappt es eben über
(ESP-) CAN nicht mehr, mit der TA versteht sich die Hauptplatine weiter
prächtig, warum auch immer.
Vor diesem Hintergrund wäre mir ein BM-"neu" auf open-source-MCU-Basis
eben sympatisch, v.a., wenn das dann (mangels anderer zeitnaher
Anweisungen von woanders her) dann automatisch einfach die Anweisungen
vom TA entgegennehmen würde und wie ein BM1 in den Speicher schreiben
könnte.
Mittelfristig wäre es dann wünschenswert, wenn ein BM-"neu" dann
selbstredend "mit der ganzen Welt" reden könnte und die von HMS&Co
kommenden Infos auch zutreffend in "Speicher-Aktionen" umschreiben
könnte (also vermutlich dann auch Funktionen übernimmt, die heute
eigentlich die TA übernimmt). Andererseits scheint mir der Bedarf dafür
im Moment auch nicht eben groß zu sein... (im Unterschied zu einem
gewissen Bedarf für BM1). 80/20 würde es für den Standardfall vermutlich
ausreichen, wenn man das "übliche Duett" aus BM1 und TA250 durch was
Intelligenteres ersetzen würde, das sich (über eine 2. MCU?) dann von
einer Hausautomatisierungslösung fernsteuern ließe, und eben im Notfall
auch im "Duett" BM-"neu"+TAxxx funktioniert...
Nicht mehr, aber auch nicht weniger.
Hallo,
Jörg R...
> und zu meinen Pegeln hatte ich hier> schon mal was geschrieben (Stichwort 30V statt 24V kommen von der> Therme, den CAN-Teil spare ich mir, denn vermutlich ist einfach meine> hauptplatine teilweise hinüber).
Sorry, erinnere mich und gefunden.. zur Sicherheit, denke Du hast die
Möglichkeit des Fehlers in der Messung ausgeschlossen und festgestellt
das es auch kein Wechselspannungsanteil in den 30V vorhanden ist
[Multimeter ->DC AC Messung]?! keine Mischspannung. { Vermutung: Schaden
durch Überlastung; Kondensator, Diode...}
> Seit die 30V da sind, klappt es eben über> (ESP-) CAN nicht mehr, mit der TA versteht sich die Hauptplatine weiter> prächtig, warum auch immer.
Das ist evtl. logisch, da BM1 mit 5V arbeitet. Auf der Platine BM1 ist
ein Stabi 5V, der scheinbar hierfür auch benutzt wird. Das dürfte aber
dem Can-Bus nicht stören. Ab einen Masseversatz über 1V kann es
Schwierigkeiten geben.
Messe mal beide Leitungen CAN-High und Can-Low zur Masse [GND].[0 bis
5v]
Hast Du dein Can-Bus-Adapter mit GND vom BM1 verbunden?
Wie wird der ESP versorgt, evtl. Fremdversorgung, mit.. auf jeden Fall
GND Anschluss an BM1.
> Mittelfristig wäre es dann wünschenswert...
Von meiner Seite her, werde ich Dir leider sagen müssen, die Zeit habe
ich bei weitem nicht. I2C Version ist nicht mehr in meinem Fokus und ein
defekt der etwas aus dem Rahmen fällt wird jeden demnächst zwingen über
eine Neuanschaffung nach zudenken. Zwangssanierung steht schon lange im
Raum.
I2C steht nur noch im Rahmen eines Textdisplay auf der Liste.
Servicefunktionen.
Um die SW zu verfeinern zu können, wird wohl Dave kaum noch zeit haben
und wollen.
Ich denke, das der Markt nicht mehr da ist und man kann sich evtl. bald
mit Bm1 eindecken (gebrauchte) oder "f[w]indige Fachleute" werden die
Preise hochhalten als Rarität.--- wie schon seit sehr lange Zeit.
> Der Gedanke, den BM1 zu ersetzen gefällt mir sehr gut. Meine BM1 (bzw.> "2") funktionieren zwar, aber es gelingt mir nicht, die TA250 durch> Dave's Code auf einem ESP32 zu ersetzen, _u.a._ weil die damit> gelieferten Pegel nicht passen (evtl. ist was an der Hauptplatine> kaputt).> Aber selbst wenn: Für einen "Notbetrieb" mit TA250 müßte man umstöpseln,> und das ist für meinen Anwendungsfall der Haken bei der Sache, da nicht> (Familien-Mit-) Userfreundlich.>> Ein Setup, bei dem der TA250 für die "defaults" weiter aktiv bleibt,> aber von einem BM1-Ersatz (befehlsmäßig) ignoriert wird, solange auf> einer anderen Schnittstelle regelmäßig Anweisungen kommen, wäre mir im> Moment sehr viel sympatischer. Das hätte auch den Vorteil, dass man ggf.> unbekannte Telegramme "durchstellen" könnte. Der TA sollte zufrieden> sein, wenn er regelmäßig Infos aus der Therme bekommt sowie eine> Außentemperatur. Dafür einen DS18B20 vorzusehen, wäre aber wohl kein> großes Ding, oder?
Die Aussentemperatur hole ich mir inzwischen einfach von einem web
service.
Im Prinzip ist das alles machbar. Du brauchst nur einen Microcontroller
mit CAN Bus Interface, der mit dem TA und dem Mischer spricht. Und der
dann ein i2c RAM als I2c Slave simuliert und die über den Can Bus
empfangenen Informationen dort reinschreibt bzw von I2c auf den Can Bus
bringt.
Da Dein Setup nicht identisch mit meinem ist, wirst Du einen I2c logic
analyzer brauchen um mitzuprotokollieren, was im RAM landet. Jedenfalls
ist das der einfachste Weg. Ich habe zum Glück diesen Saleae Analyzer,
der wirklich gut ist, aber auch einiges kostet. Ich glaube man kann die
Software (Logic 2) aber auch mit sehr billigen Clones verwenden (<50
Euro wenn ich mich richtig erinnere). Vielleicht mal Googeln.
Thorsten L. schrieb:> Mann - Du bist aber auch echt der typische Neinsager. Ist Dir schon mal> aufgefallen dass Du überall nur Probleme siehst und keine Chancen? Alles> was von anderen kommt ist für Dich nicht machbar, fahrlässig, idiotisch> und lächerlich. Versuch doch mal etwas positiver ans Leben ranzugehen!
Psychoanalyse mit dem Skalpell, herrlich. Treffender geht's nicht.
Vielleicht machen wir noch mal einen trööt zu dem Thema ohne
Peter*nochgast auf.
Aber wahrscheinlich hängt er sich dann in vermeintlicher Kompetenz auch
wieder rein...
Hallo,
es gibt Leute die haben was zu sagen und dann kommen die Leute,
die !!nur rumpöbeln können.
Herzlich Willkommen
Verrücktes Pferd.
H.Joachim S.
> Vielleicht machen wir noch mal einen trööt zu dem Thema ohne> Peter*nochgast auf.
Nicht reden machen!
Jörg R. schrieb:> Jedenfalls: Dave's firmware hatte mal bei mir funktioniert, aber wenn> man da den CAN-Bus vom TA nicht wirklich wegschaltet, dominiert die TA> und der ESP lauscht nur. Seit die 30V da sind, klappt es eben über> (ESP-) CAN nicht mehr, mit der TA versteht sich die Hauptplatine weiter> prächtig, warum auch immer.
Eine Sache die mir aufgefallen war ist dass esp32 + can bus adapter nur
ohne Terminierungsbrücke mit der Therme sprechen konnte. Bin der Sache
nicht gross weiter nachgegangen aber komisch ists schon. Als wenn das
mit 3.3v betriebene can bus Modul der Therme nicht genug Differenz
zwischen Can H und Can L auf die Leitung bringt.
Btw da schon zwei Leute ihre HW hier beim experimentieren zerlegt haben
(oder die einem natürlichen Tod erlegen ist?): ich würde empfehlen den
Mikrocontroller von der Therme mit Strom zu versorgen, damit GND auf
gleichem Potential ist.
Man weiss ja in einer Altbauwohnung nie ganz genau was passiert, wenn
man gnd aus zwei Steckdosen mit separaten Netzteilen verbindet.
Hallo,
Thorsten L.
> Im Prinzip ist das alles machbar...
Na Ja, nur den Fehler im CAN-Bus zu finden nicht.... man siehe unten
> Du brauchst nur einen Microcontroller> mit CAN Bus Interface, der mit dem TA und dem Mischer spricht. Und der> dann ein i2c RAM als I2c Slave simuliert und die über den Can Bus> empfangenen Informationen dort reinschreibt bzw von I2c auf den Can Bus> bringt.
Jörg, was funktioniert bei Dir nicht mehr? ... CAN-Bus?....
> Eine Sache die mir aufgefallen war ist dass esp32 + can bus adapter nur> ohne Terminierungsbrücke mit der Therme sprechen konnte. Bin der Sache> nicht gross weiter nachgegangen aber komisch ists schon. Als wenn das> mit 3.3v betriebene can bus Modul der Therme nicht genug Differenz> zwischen Can H und Can L auf die Leitung bringt.
Alle 3 -4 Monate kommt das Thema auf [warum liest das keiner oder
informiert sich selbst!!], wir haben einen 5V Can-Bus und das ist in der
Praxis fast immer der Fall, auch wenn der CAN Controller mit 3,3V
gespeist wird. Eine bessere Schaltung z.B.: Watterott unterstützt das.
Link: CAN-Bus Pegel
!!Ein Abschluss am CAN-Bus Adapter ist zu unterlassen!!, es wird nur an
den Enden [TA2xx / BM1] terminiert, evtl. bei Stern neu berechnen, alle
Abschlüsse. Es ist auch gängig ohne Abschluss zu arbeiten oder nur ein
Abschluss zu setzen. Parameter sind immer hierbei Geschwindigkeit und
Leitungslänge nur im Drill.
> Man weiss ja in einer Altbauwohnung nie ganz genau was passiert, wenn> man gnd ""aus"" zwei Steckdosen mit separaten Netzteilen verbindet.
Achtung!!: PE ist nicht GND
Das ist der Anschluss der in Frage kommt.
• 4 = GND
Man schaue sich mal die "Aufgabe" des Moduls mit dem Namen RAM an und
dann die kurzzeitige max. Belastung des ESP32 an.
negativ ist nur die Sichtweise und nicht verstehen. Wenn es hilft...+
> Na Ja, nur den Fehler im CAN-Bus zu finden nicht.... man siehe unten
Du - mein Ansatz ist da einfach etwas anders: wenn jemand etwas machen
möchte und nach Details fragt dann gebe ich die. Meine Mission im Leben
ist es nicht anderen vorzuschreiben was sie zu tun oder lassen haben.
> !!Ein Abschluss am CAN-Bus Adapter ist zu unterlassen!!, es wird nur an> den Enden [TA2xx / BM1] terminiert, evtl. bei Stern neu berechnen, alle> Abschlüsse. Es ist auch gängig ohne Abschluss zu arbeiten oder nur ein> Abschluss zu setzen. Parameter sind immer hierbei Geschwindigkeit und> Leitungslänge nur im Drill.
Ich hatte ja gar keinen TA dran (zum 20. mal). Aber das Setup
funktionierte nicht mit Terminierung. Das ist schon erstaunlich.
>> Man weiss ja in einer Altbauwohnung nie ganz genau was passiert, wenn>> man gnd ""aus"" zwei Steckdosen mit separaten Netzteilen verbindet.>> Achtung!!: PE ist nicht GND
Ach nee.
>> Das ist der Anschluss der in Frage kommt.>> • 4 = GND>> Man schaue sich mal die "Aufgabe" des Moduls mit dem Namen RAM an und> dann die kurzzeitige max. Belastung des ESP32 an.>> negativ ist nur die Sichtweise und nicht verstehen. Wenn es hilft...+
In der Tat - diesen Absatz kann ich rein semantisch/grammatisch nicht
verstehen. Ungeachtet der Polarität der Sichtweise.
moin,
ich habe eine KSBR 3-16 a21 mit DT1 und TA211e im keller.
komme ich da auch ohne BM1 an die daten der heizung?
beim lesen habe ich was von i2c gesehen.
wo wäre der?
bisher loge ich mit ds18b20 und einem teensy4.1.
das läuft seit einigen jahren recht zufriedenstellend.
mfg horst
Hallo Horst,
Du hattest ja schon mal angefragt, eine witterungsgeführte Heizung ist
dein Eigen und Du hast die gleichen Möglichkeiten des Ausbaues wie hier
mehrfach schon beschrieben.
Ohne einen Schritt zu wagen wirst du nicht weiter kommen.
Durch den TA211E verlierst Du zu mindestens den i2C Anschluss an der
"Vorderseite" (TA211E). Ob der multicodierter Stecker bei der Uhr, auch
noch bei der Installation des TA211E die I2C Funktion bei behält, ist
mir nicht bekannt, noch ab wann das Textdisplay überhaupt möglich war.
Hier müsste mal ein Scan durchgeführt werden bzw. vielleicht hat ja ein
Mitleser einen ähnlichen Aufbau mit Textdisplay. FD daten sind wichtig.
TA211E und Textdisplay eine Variante???
Die Frage was willst Du überhaupt mit lesen, Rechenleistung hast Du ja
genug nur ob praktisch? Vom TA211E kannst Du nur die Einstelldaten und
die Außentemperatur wandeln. Ich habe mich schon mal dazu geäußert, wie
das funktioniert. ~Seiten[2]
moin,
danke für die antwort.
wie ist die steckerbelegung am ta211e? wenn dort i2c drauf ist könnte
ich doch dort mit einem sniffer die daten anbgreifen. da ich nicht
steuern will würde mir das reichen.
liege ich da richtig?
Thorsten L. schrieb:> Du - mein Ansatz ist da einfach etwas anders: wenn jemand etwas machen> möchte und nach Details fragt dann gebe ich die.
Danke! Hast du irgendwo ein Repo, auf dem dein Code für "Funk-to-i2c" zu
finden ist? Bzw. du scheinst dich ja intensiver auch mit Dave
ausgetauscht zu haben. Discord?
Wie bereits geschrieben, wird es noch etwas dauern, bis ich die Heizung
dann wirklich mal auseinandernehme und dann auch mal versuchen will, ein
paar aktuelle Messdaten zu meinen komischen Pegeln zu liefern. Im Moment
läuft die eben möglichst ungestört, damit ich mir ggf. nicht zum
falschen Zeitpunkt ein zusätzliches Problem einfange. Ansonsten kenne
ich das Risiko... Es ist meins!
Was diese ständige Gnd-Diskussion bei CAN angeht: Ich kenne das Thema,
ja, und ich weiß v.a. auch, was passiert, wenn man was in die Richtung
an der falschen Stelle versucht. Ob die Therme einen Hau davon hat, dass
der ESP mal (mit verbundenem GND bzw. u.A. auch aus diesem Grund) über
die Therme versorgt gewesen war - ich weiß es nicht, kann sein. Ist
jedenfalls ein anderer Fehler auf dem Board, als das, was Dave hatte
(wohl schon vor dem Kauf des Objekts!).
Ansonsten kenne ich mich auch nicht allzugut aus, aber soweit ich den
TA211E vor meinem geistigen Auge hatte, sind da einfach ein paar
verstellbare Widerstände drin. Ob das dann wirklich über die
i2c-Schnittstelle abfragbar ist: keine Ahnung, für mich sieht das
ziemlich analog aus.
Auch die Uhr scheint nur analoge Ein-/Aus-Infos zu liefern, so
jedenfalls das, was mir aus der diesbezüglichen Diskussion (u.a.) mit
Dave in Erinnerung geblieben ist (daher: alles ohne Gewähr).
Mein Schluss: Der "Ofen" braucht ein paar (wenige!) Eckdaten, dann tut
er, was er soll. Um ihm diese zu geben, paßt für mich die
"standalone-Eigenbau-" i2c-Schnittstelle (mit TA250-Fallback über CAN)
nach jetzigem Kenntnisstand deutlich besser in mein künftiges
Gesamt-Setup wie BM1. Von daher würde ich das gerne dann angehen und
mich freuen, wenn mich joelucid da etwas "an der Hand" nehmen könnte,
und ich bin auch gern bereit, das so zu machen, dass andere auch was
davon haben (und z.B. per serieller Schnittstelle einen Arduino aus
jedweder Heimautomatisierungslösung (oder von mir aus auch
Tasmota-scripting) raus mit den notwendigen Soll- und ist-Daten füttern
könnten.
Hallo,
nochmals.. da Du deine Anlage so wie sie ist,... beibehalten willst!!!
Was bleibt Dir auch anders über.
Also mit Ta211E und DT2 sind diese beiden Leitungen (I2C ->BM1) vom
TA211E benutzt!! Kein I2C mehr!!
Peter*
> Ich habe mich schon mal dazu geäußert, wie> das funktioniert. ~Seiten 1[2]3
ja mehrfach--> suchen lesen!
Horst S.
> wenn dort i2c drauf ist könnte> ich doch dort mit einem sniffer die daten anbgreifen
Ja...,aber nicht am TA211E Stecker, sondern evtl. am Hauptplatinen
Stecker Umfeld DT2 und an einem evtl. Servicestecker neben den TA211E
Stecker an Hauptplatine.
Meine Urteilung: Es besteht nur eine geringe Möglichkeit hier noch I2C
zu finden, da Du nicht das richtige Gerät [~BM1] angeschlossen hast.
Selbst wenn, werden angeblich keine Datenwerte mehr geliefert sondern
nur noch Text Info's.
Das Textdisplay ist eine "evtl." Sonderausstattung Premium und ersetzt
!TA211 und DT2! Benutzung Baujahrabhängig!
Denke daran hier wird mit 24V gehandelt und jeder ist selbst
verantwortlich!
Vielleicht helfen Dir die Bilder noch, ansonsten lasse die Finger weg.
Hallo,
Thorsten L. schrieb:> Du - mein Ansatz ist da einfach etwas anders: wenn jemand etwas machen> möchte und nach Details fragt dann gebe ich die.> Meine Mission
wau!
> im Leben> ist es nicht anderen vorzuschreiben was sie zu tun oder lassen haben.
Na super. Es wird immer seltsamer hier. Wer bitte hilft hier nicht? und
ich verbreite hier kein Unsinn.
Wenn man hier auf Fehler hinweist und das dies schon so oft diskutiert
wurde, wird behauptet man schreibt jemanden was vor.
... und plötzlich ist alles halb so schlimm und funktioniert wieder
alles trotz des Fehlers???
Sorry...nee schau
moin peter,
so recht verstehe ich das noch nicht. der 6polige stecker an dem der
ta211e hängt ist doch der selbe wie für das bm1. wie redet den die
hauptplatine mit dem bm1, geht das nicht per i2c?
ich lese mich gerade durch die listen.......
hut ab was ihr da schon alles gemacht habt.
gilt das noch?
BM1 -Stecker
Pin1 VCC, Pin2 NC, Pin3 GND, Pin4 "5Volt", Pin5 "SDA", Pin6 "SCL"
da könnte ich doch mit meinem sniffer ran gehen.
Hallo Horst,
weil Du es bist!
Ja und Nein, der I2C wird abgeschaltet, aufgrund des Gerätes TA211E.
Die Pinne 5 und 6 sind nun ein Takt/Freigabe_Signal [->] bzw. ein Daten
Signal [<-] bestehend aus 8 Frequenzpakete hart umgeschaltet im Bereich
von ~100 bis ~450Hz im Takt von wenigen Hz. Lass mich nicht Lügen 1 oder
2Hz.
TA 211E ist nichts anders als ein VCO mit 8 Eingängen mit zyklischer
codierter Umschaltung.
Das was die Heizung (& DT2) nur braucht!!
TA211E könnte man auch simulieren.
Hier werden die Ports anders verwendet, ob eine generelle I2C
Schnittstelle existiert ist mir noch nicht bekannt.
Textdisplay, evtl. Serviceschnittstelle sind evtl. ein Indiz. hierfür.
...EOF
Jörg R. schrieb:> Danke! Hast du irgendwo ein Repo, auf dem dein Code für "Funk-to-i2c" zu> finden ist? Bzw. du scheinst dich ja intensiver auch mit Dave> ausgetauscht zu haben. Discord?
Ich hab meinen Code weiter oben gepostet. Mit Dave habe ich mich nicht
weiter ausgetauscht als hier und in dem Forum seines Projekts.
Jörg R. schrieb:> Mein Schluss: Der "Ofen" braucht ein paar (wenige!) Eckdaten, dann tut> er, was er soll. Um ihm diese zu geben, paßt für mich die> "standalone-Eigenbau-" i2c-Schnittstelle (mit TA250-Fallback über CAN)> nach jetzigem Kenntnisstand deutlich besser in mein künftiges> Gesamt-Setup wie BM1.
Genau so ist das. Im Grunde braucht die Therme nur Vorlauf soll, WW soll
und Pumpe an/aus. Mehr ist da nicht einzustellen. Aber interessant ist
natürlich das Auslesen der Infos der Therme. Sonst könntest Du es auch
über die 1-2-4 Schnittstelle machen - da musst Du nur die passende
Spannung für Vorlauf soll anlegen.
Tag zusammen,
ich habe ein BM1 und einen TR220 (Raumtemperaturregler ohne
Aussenfühler, ansonsten wie TA250), die Daten lese ich an einem
Raspberry mit Can Modul mit.
Seit Jahren bis vor ein paar Wochen war das Heizgerät eine Junkers -6
Therme, dabei kam es sehr selten zu falschen Werten, z.B. Hex 255 für
den Parameter 209, also den Brennerstatus, wo ja nur 0 und 1 zulässige
Werte sind.
Jetzt habe ich dasselbe TM1, denselben Regler, den selben Raspberry an
einer anderen Therme (ZWR 18-5), mit anderer Verkabelung.
Nun bekomme ich häufig falsche Werte, entweder 255 oder ein Bruchteil
davon, wie z.B. bei den Temperaturen 127.5, 65.5, 31.5. Der Großteil der
Werte stimmt aber.
Ich filtere das derzeit mit einem Programm am RPi raus... das sieht dann
so aus:
10:09:59 - Vorlauf Max: Value 63.5, ignoring
10:13:34 - Vorlauf Ist: Value 127.5 larger than 90, ignoring
10:14:16 - Vorlauf Ist: Value 63.5, ignoring
10:18:01 - Brenner Ein: Value 255 larger than 90, ignoring
10:19:37 - Heizung Ein: Value 255 larger than 90, ignoring
Die Temperaturwerte sind dabei schon umgerechnet. Jetzt frage ich mich
natürlich, was die Ursache ist. Liegt es an der Kommunikation zwischen
TM1 und Therme, oder können solche Werte durch fehlerhafte Verkabelung
kommen?
Es gibt keine Error-Frames auf dem Bus, nur eben regelmäßig falsche
Werte. Hat jemand von Euch so etwas schon mal gesehen, oder eine Idee wo
das herkommen könnte? Es betrifft ausschließlich Übertragungen vom BM1,
die Werte vom TR220 sind 100% korrekt.
Danke & Gruß,
A.
Hmmm, die Verkabelung noch einmal komplett überprüft, den Raspi
testweise direkt am BM1 angeschlossen ==> selbes Problem.
BM1 erneuert (naja gegen eine ältere gebrauchte Version getauscht) ...
selbes Problem.
Fraglich ob der TR220 auch die falschen Werte bekommt und darauf
reagiert... ich werde es im Auge behalten.
Merkwürdig, sehr merkwürdig. Derselbe Aufbau hat an einer anderen Therme
bislang fehlerfrei funktioniert...
Gruss,
A.
Ich bin am Verzeifeln. Ich dachte durch meinen Umbau hätte sich am
Problem nichts geändert. In der Tat sind die regelmäßigen 255-Werte für
20A und 209 (Status Pumpe & Brenner) unverändert, die filtere ich raus.
Zusätzlich habe ich jetzt noch mehr (quantitativ) und noch weniger
vorauszusagende Ausreißer (qualitativ) bei den Werten für 200 und 201,
also die Vorlauftemperaturen von Seiten der Therme.
Es ist also schlimmer geworden... ich füge mal ein Bild bei...
Für den Bus habe ich ein 2x2x0.25mm Datenkabel verwendet, verdrillte
Adern, geschirmt. Durch das Ganze rumprobieren habe ich leider das
ursprünglich verwendete BM1 (Junkers Version 0.3 mit FD von 2003)
geschrottet, die 0.5A Feinsicherung der Therme war dann auch durch.
Vermutlich einen Kurzschluss gebaut. Verdammt...
Das was ich jetzt in Benutzung habe ist hat die Version 0.2 mit FD Mitte
2000.
Ich wäre für jeden Input dankbar.
A.
Hallo,
traurig, das Du scheinbar keinen Vorname hast!
Checke als erstes deine Heizung ohne zusätzlichen Can-Bus Anschlusses
oder Versorgung deines Raspberry's über die Therme. Daten über den
Service und dem Tr kontrollieren. Spannungen prüfen.
Wenn Du hier Fehler aufgezeigt bekommst hat sich die Sache hier
erledigt.
Wie hast Du einen Kurzschluss verursacht mit einem Kabel mit codiertem
Stecker.
Hallo Peter,
der Name ist Alex... ich bin im Internet immer etwas vorsichtig...
Den Raspberry habe ich nie über den Bus mit 12V versorgt, er hat ein
eigenes Netzteil, nur GND, Bus-High und Bus-Low sind angeschlossen.
Ohne den Raspberry sieht der Aufbau (nur BM1 un TR) erst einmal gut aus.
Da die "Ausreisser" bei den Werten jedoch nicht ständig da sind, kann
ich es ohne den Raspberry nicht gut überprüfen.
Was ich sagen kann ist dass ich (mit Raspberry dran) zweimal am TR
kurzzeitig eine rote Lampe und "Fehler FF" angezeigt bekam, das
entsprechende 206 Telegram konnte ich dann auch im Can-Log des Pi
finden.
Die Therme "wusste" laut Service-Adresse .0 auch nichts von diesem
Fehler, den es nach Liste auch nicht gibt.
Ich habe, um das Problem etwas einzugrenzen, ein gebrauchtes BM1 0.3
bestellt, sowie ein neues PiCAN Board für den Raspberry. Anfang
kommender Woche kann ich dann mehr sagen.
Das mit dem (Can-seitigen) Kurzschluss war nur eine Vermutung. Das alte
(ursprüngliche und definitiv defekte) BM1 hat dann (in einem weiteren
Test ohne can-seitige Verdrahtung) die Feinsicherung auf der
Hauptplatine umgehend noch einmal geschmolzen.
Ich fürchte, dass durch diese Aktion die Hauptplatine einen Schaden
haben könnte, auch wenn nach Sicherungstausch erst einmal alles gut
aussieht. Die Therme läuft derzeit ohne Modul und TR.
Grüße,
Alex
Hallo Alex,
der Fehler kann momentan ja überall sein.
Die Wahrscheinlichkeit, das die Hauptplatine einen Schaden genommen hat
ist leider sehr hoch. Auf der anderen Seite hast Du geschrieben das es
schon früher zu vereinzelten Fehler kam, was ja auf die BM1 Karte bzw.
dein Aufbau schon eher schließen lässt.
Wiederum, kann ich den defekt der Sicherung (313 5V) noch nicht richtig
einordnen. Einfach wäre es mit einem Schaltplan und so weit, bin ich
nicht mehr im Thema, glaube der Bm1 hat eine eigene 5V Versorgung aus
24V (Bs7). Also woher kommt der Kurzschluss? ~~TA211 hat 5V.
!! weitere Tests mit defekten Teilen in deiner Therme solltest Du
vielleicht einstellen!!
Falls die Möglichkeit besteht untersuche mal die defekte BM1 ohne
Einbau.
Ohne das Du weist was zum Kurzschluss führte bzw. der CAN-Bus Fehler
würde ich kein "neues" BM1 einsetzen. Fehlersuche ist angesagt.
Warum muss es ein Raspberry sein, ein Pi micro w würde ich noch
verstehen aber.... je nach weiteren Einsatz ist Arduino, ESPxx angesagt
und besser?
Aufbau, So einfach wie möglich halten!! ohne weitere Aufgaben.
Hallo Peter,
Peter* schrieb:> der Fehler kann momentan ja überall sein.
Ja, leider.
> Die Wahrscheinlichkeit, das die Hauptplatine einen Schaden genommen hat> ist leider sehr hoch. Auf der anderen Seite hast Du geschrieben das es> schon früher zu vereinzelten Fehler kam, was ja auf die BM1 Karte bzw.> dein Aufbau schon eher schließen lässt.
Der Aufbau an sich hat bereits jahrelang so funktioniert, nur eben mit
einer anderen Therme. Hier habe ich nach einem langen Tag (Can-Bus-Kabel
quer durch die Wohnung neu verlegt, inkl. Entfernung von viel unschöner
Altbau-Verkabelung und Renovierungsarbeiten) nicht mehr die nötige
Sorgfalt walten lassen und alles schnell zusammengeklemmt. Soweit ich es
noch nachvollziehen kann habe ich dabei 12V Versorgungsspannung von der
Therme an GND vom Raspberry-Modul gelegt.
Das Modul hat nachher auf den ersten Blick noch funktioniert, so dass
ich keinen Sachschaden vermutet habe. Deshalb der bestellte Ersatz für
dieses Modul.
> Wiederum, kann ich den defekt der Sicherung (313 5V) noch nicht richtig> einordnen. Einfach wäre es mit einem Schaltplan und so weit, bin ich> nicht mehr im Thema, glaube der Bm1 hat eine eigene 5V Versorgung aus> 24V (Bs7). Also woher kommt der Kurzschluss? ~~TA211 hat 5V.
Wie ich es geschafft habe, das BM1 zu zerstören, weiss ich wirklich
nicht. Es ist klar, dass ich dieses Modul ganz gar keinesfalls wieder
anschliesse. Ich habe einen Kurzschluss vermutet, deshalb die
Can-Verkabelung entfernt und noch einmal ohne getestet. Vor dem
Schmelzen der Feinsicherung fing das LED Display der Hauptplatine an zu
flackern, vermutlich hängt es an derselben Versorgung. Schaltplan habe
ich leider keinen.
> Falls die Möglichkeit besteht untersuche mal die defekte BM1 ohne> Einbau.> Ohne das Du weist was zum Kurzschluss führte bzw. der CAN-Bus Fehler> würde ich kein "neues" BM1 einsetzen. Fehlersuche ist angesagt.
Leider fehlt mir zu so einer Fehlersuche (Messen sowohl des BM1 als auch
insbesondere des Grundmoduls) sowohl die Messtechnik, als auch - ehrlich
gesagt - das Fachwissen. Da eine neue Hauptplatine über 300 Euro kostet,
bleibt mir eigentlich nur im Ausschlussverfahren die anderen Komponenten
zu ersetzen und zu hoffen...
> Warum muss es ein Raspberry sein, ein Pi micro w würde ich noch> verstehen aber.... je nach weiteren Einsatz ist Arduino, ESPxx angesagt> und besser?
Naja, die Software darauf (selbstverbrochener canlogger und Volkszähler
DB) hat sich seit Jahren für mich bewährt. Ich möchte da das Rad nicht
noch einmal erfinden, zumal ich ja weiss dass es grundsätzlich
funktioniert.
Ich habe das "neue" BM1 sowie das Raspberry Board frühestens kommende
Woche beisammen und bin gerne offen für bessere Methoden der
Fehlersuche...
Grüße,
Alex
Hallo Alex,
habe schon ähnliches vermutet.
Zwei Dinge solltest Du wissen, es gibt keine 12 V Versorgung an der
Therme nur 24V. An der Verbindungsleitung Hauptplatine/ BM1 "kann" auch
5V anliegen an einem PIN. GND Verbindungen ist auch bei Can-Bus ein
muss, besser Pflicht.
Keine Belastung der Therme durch äußere Schaltungen, nur GND
Ein Schaltplan hat wohl keiner außerhalb von Bosch. Wünscht sich hier
wohl jeder.
Den Can-Bus wie schon oft gesagt kein zusätzlicher Abschluss. Obwohl
lange Querleitungen auch bei 10k evtl. Störungen auftauchen können.
Evtl. Can-Busfehler CRC... abfragen falls möglich.
Nun gelegentlich kann man auch ein Hauptplatine als Schnäppchen für
unter 100Euro bekommen.
Alex @ SW
> noch einmal erfinden, zumal ich ja weiss dass es grundsätzlich> funktioniert.
Ja, aber evtl. auch nicht immer!!
Dann kann ich Dir vielleicht noch raten einen Kabelbaum herzustellen,
den Du nicht verändern musst, der funktioniert.
Peter* schrieb:> Zwei Dinge solltest Du wissen, es gibt keine 12 V Versorgung an der> Therme nur 24V.
Ja, da hast Du Recht... eigentlich wusste ich das, ist mir aber
irgendwie abhanden gekommen. Das macht die mögliche Zerstörung des PiCan
noch wahrscheinlicher...
> GND Verbindungen ist auch bei Can-Bus ein muss, besser Pflicht.> Keine Belastung der Therme durch äußere Schaltungen, nur GND
[ ... ]
> Den Can-Bus wie schon oft gesagt kein zusätzlicher Abschluss.
Soweit klar. Eine Frage noch: Würdest Du die Abschirmung der
Can-Leitungen
a) erden? (möglich bei mir entweder über die Gasleitung oder PE/N)
b) mit dem Bus/GND verbinden (habe ich gelesen fände ich aber riskant,
da ja z.B. eine induktive Beeinflussung durch naheliegende 230V
Leitungen stattfinden kann)
c) nichts von beidem (habe ich bislang so und hat in der letzten Wohnung
auch funktioniert)
Ich glaube nicht dass das mit meinem Fehler zu tun hat, da ich ja
testweise die Wohnungsverkabelung ausgelassen und alles vor Ort an der
Therme angeschlossen habe...
Peter* schrieb:> Alex @ SW>> noch einmal erfinden, zumal ich ja weiss dass es grundsätzlich>> funktioniert.> Ja, aber evtl. auch nicht immer!!
Was die "Software" betrifft - es ist eigentlich nur ein Shellskript, das
candump laufen lässt und in einer Dauerschleife die Pakete auswertet. Es
ist nicht schön, aber funktional und seit 2019 - zum Umzug auch stabil
...
Peter* schrieb:> Dann kann ich Dir vielleicht noch raten einen Kabelbaum herzustellen,> den Du nicht verändern musst, der funktioniert.
Werde ich so machen. Ich melde mich wenn sich Neues ergibt.
Grüße,
Alex
Hallo,
zur Stromversorgung älteren Junkers Thermen. Diese sind so ausgelegt,
das sie nur die Therme versorgen. Wird mehr Strom benötigt werden hier
spezielle Bausteine benötigt, selbst im analogen Bereich. Ein Pi gehört
ganz sicher nicht an die Therme, dies bezüglich.
Abschirmung des Can-Bus ist gar nicht notwendig, eine gute Verdrillung
(kurzer Schlag, wenige Zentimeter pro Schlag) beider Leitungen reicht
vollkommen aus. Erst recht bei 10k, hat aber nichts mit der GND Leitung
selbst zu tun, ein muss. Wenn aber der Schirm da ist würde ich ihn evtl.
einseitig anschließen.
Auf keinen Fall an die PE Leitung. Wiederum würde ich ein mehradriges
Kabel verlegen das alles beinhaltet, somit ein Netzwerkkabel bzw.
Verlegekabel.
Netzwerkkabel: Wie schon öfters beschrieben halte ich die Watterott
Can-Bus Platine für die Bessere, nicht das man sie nicht verbessern
kann, aber vieles ist berücksichtigt.
Kommunikationsleitungen gehören nicht neben Wechselstromleitungen.
Vielleicht machst Du mal ein Foto von deinem Aufbau PI Can-Bus.
Gruß
Hallo Peter,
mal wieder am verzweifeln... ich erzähle es jetzt einfach so wie es
passiert ist, vielleicht übersehe ich hier irgendwas.
Am Wochenende habe ich meine Bus-Leitungen überprüft. Multimeter mit
Widerstandsmessung. Alle Adern auf Durchgängigkeit und auch Kurzschlüsse
überprüft. Alles in Ordnung befunden. Nochmal zur Vollständigkeit - ich
habe ein Kabel mit zwei 0.25mm verdrillten Adernpaaren, eines für
Can-High/Low, eines für GND und 24V, sowie eine Schirmung die nirgends
angeschlossen ist. Diese Leitung kreuzt ein einer Stelle im 90 Grad
Winkel eine darunterliegende 230V Leitung.
Heute dann mit "neuem" Busmodul (diesmal ein 0.4 mit dem großen IC
drauf) sowie wirklich fabrikneuem PiCan 2 Board auf dem Raspberry. Der
Raspberry wird nicht über den Bus versorgt. Am PiCan sind GND,
Bus-High und Bus-Low angeschlossen.
Erstmal schien alles zu laufen. Da ich aber weiß, dass der Fehler auch
erst nach ein paar Minuten auftreten kann, ging ich außer Haus,
Einkaufen.
Als ich zurück kam: die üblichen Fehler in der Aufzeichnung (falsche
Temperaturwerte, gelegentliche 255 für Brenner und Pumpe ein) sowie
Fehlermeldung AC an der Therme (Fehler in der Kommunikation zwischen
Leiterplatte und Busmodul). Aber das Busmodul sendete noch.
Mit dem Busmodul hatte ich auch einen TA250 bekommen. Um
auszuschliessen, dass mein TR220 einen Fehler hat, den TR gegen der TA
getauscht. Therme an. Nur Datagramme vom TA auf dem Bus, nicht vom BM1.
TA gegen TR zurückgetauscht - nur Datagramme vom TR, nicht vom BM1.
Nochmal die Therme aus und eingeschaltet - Feinsicherung 0.5A wieder
geschmolzen.
Ich bin mir sicher, dieses Mal keine Fehlverdrahtung, keinen Kurzschluss
verursacht zu haben.
Also: Hauptplatine defekt? - oder übersehe ich hier irgendwas...
Grüße,
Alex
Hallo,
nun... habe das Gefühl das Du die zweite oder sogar die dritte Runde
eingeleitet hast und immer weniger vom Erfolg gekrönt bist.
Was bleibt Dir noch anders übrig als die Hauptplatine zu wechseln.
Wiederum spricht der Kurzschluss nicht unbedingt für ein Fehler auf der
Platine.
Das Schlimme, Du bist nicht ein Schritt weitergekommen, die neuen Teile
sind alle nicht mehr vertrauenswürdig. Können geschädigt sein.
Ich erlaube mir mal zu fragen, warum alle Neuteile auf einmal?? Mit viel
Zeit dazwischen, ein Schritt nach dem Anderen, in deiner Situation.
Ohne zu messen, wirst Du nicht weiter kommen, hol Dir direkte Hilfe.
Gruß
Hallo Peter,
ja, ich sehe dass ich nicht weiterkomme! Ich habe Aufbau und Anwendung
eigentlich nur (aus meiner letzten Wohnung) übernommen, die ich 2019
auch mit Hilfe des Forums (damals habe ich als Gast unter dem Namen
"trabant" geschrieben) zusammengestellt habe, und nachdem alles ein
halbes Jahr stabil lief, auch via VZ-Wiki veröffentlicht habe.
Das war lang bevor es quasi fertige und hochentwickelte Anwendungen wie
z.B. die von Dave hier im Forum gab. Und ich weiß, dass einige Leute
genau meinen Aufbau nachgebaut haben und Erfolg damit hatten. Mir wurde
nie etwas zurückgemeldet, was auf einen grundsätzlichen Fehler im Aufbau
hätte schließen lassen. -- Was nicht heißt, dass es nicht doch einen
geben könnte...
Ja, es ist die zweite oder dritte Runde. Das Raspberry Modul als
Fehlerquelle schien mir wahrscheinlich, da ich es ja anfangs falsch
angeschlossen hatte und nochmal ein Can-Modul anzuschließen, mit dem die
Sicherung geschmolzen war, erschien mir fahrlässig.
Wo sollte ich externe Hilfe holen, wenn nicht durch Inputs aus dem
Forum? Ich könnte den Junkers Werkskundendienst beauftragen, der dann
auf Verdacht vermutlich alles tauscht. Am Ende habe ich dann keine
Kontroll- und Aufzeichnungsmöglichkeit mehr und wäre vermutlich > 1000 €
ärmer.
Ja, ich würde auf einen Fehler im Grundmodul tippen, aber ich sehe auch
dass die geschmolzenen Sicherungen auf etwas Anderes deuten. Was könnte
ich mit meinen beschränkten Möglichkeiten noch messen, will meinen mit
Multimeter, kein Oszilloskop o.ä. vorhanden...?
Ich überlege, um eine kostenmäßige Explosion zu vermeiden, das Can-Kabel
wieder rauszureissen und wieder 3x0.75mm für einen vorhandenen
1-2-4-Regler (TR200) zu verlegen. Das wäre der Schritt zurück von der
modernen Datenverarbeitung in die 70er Jahre. Und gäbe es
regelungsttechnische Fehler aufgrund eines defekten Grundmoduls, würde
ich sie nicht mehr sehen können.
Wie würdest Du weiter vorgehen?
Grüße,
Alex
Hallo,
was soll ich Dir noch raten, rette deine Heizung und schau ob sie noch
funktioniert(das 2 mal!) und überprüfe nochmals bei der
Deinstallation(can...) ob Du Fehler findest (nur registrieren).
Ich glaub das Du da einen Fehler ständig wiederholst. Anschlussbelegung
prüfen, nur im Bereich der Heizung ein kurzes Kabel zum TR220(TR200)
legen, es sind 4 bzw. 3 Kabel!! nicht blind nur nach Plan.
Es werden hier 2 Sicherungen zerstört, obwohl Du andere Teile benutzt
hast.???
Die Grundfunktion der Heizung testen und sonst nichts. Kein Can, kein Pi
kein Schnickschnack. Fertig.
Was ich machen würde? Ich habe nie an meiner Heizung herum gespielt,
sondern immer an separaten Aufbauten (Schreibtischtest) getestet usw.
...war nicht billig, aber billiger als eine defekte Heizung.
Ein Multimeter sollte jeder besitzen, es brauch kein super teil sein.
Ich finde deine Veröffentlichung in VZ-Wiki(?)nicht.
Gruß
Hallo,
ja,... hast eigentlich alles beschrieben damals. Die Pi_SW kann ich
nicht beurteilen.
messe bitte mal die Versorgungsspannung der Therme 24V zu GND, falls BM1
noch in der Therme ist an den Anschlussklemmen (24V Pin1--GND Pin4).
Messe auch den Wechselspannungsanteil an den Punkten, die müssen null
sein.
Gruß
Peter* schrieb:> messe bitte mal die Versorgungsspannung der Therme 24V zu GND, falls BM1> noch in der Therme ist an den Anschlussklemmen (24V Pin1--GND Pin4).> Messe auch den Wechselspannungsanteil an den Punkten, die müssen null> sein.
Interessant. 24V zu GND am Anschluss für den Analogregler (1-2-4) sind
24V. Am BM1 v.04 etwa 34V. Etwas früher im Thread habe ich etwas über
abweichende Versorgungsspannungen gelesen...
Beitrag "Re: Junkers CAN-Bus Protokoll" - wie
würdest Du das einschätzen? Mögliche Fehlerquelle?
Wechselspannungsanteil in beiden Fällen knapp 2V, kann aber eine
Ungenauigkeit meines Multimeters sein.
Dann habe ich noch in meiner abgeklemmten Can-Wohnungsverkabelung die
nach einer möglichen Induktionsspannung gemessen (gegen Erde/Gasleitung)
- Stichwort 230V. Über 30V im Schirm, unterschiedliche Werte (zwischen
10 und 25V) in den einzelnen Adern. Nach Entfernung meiner einen
Kreuzung (bzw. 230V Leitung stromlos gemacht) immer noch so. Nach
Abschaltung der gesamten Stromversorgung war es weg.
Ich habe dann leider herausgefunden (Leitungsfinder), dass quasi überall
kreuz und quer irgendwelche Leitungen verlaufen. Altbau, original mit
Gasbeleuchtung, nachträglich elektrifiziert. Kann ich also nicht ganz
vermeiden. Wenn ich den Schirm erde (an der Gasleitung) ist
logischerweise die induzierten Spannungen auch in den einzelnen Adern
weg.
Ob diese Induktionsspannung ursächlich sein kann, ggfs. auch was
kaputtgemacht hat? Ich weiss nicht wie viel Strom in den Can-Bus Adern
fließt, sprich was der "schlucken" kann...
Hallo,
Alex
> Interessant. 24V zu GND am Anschluss für den Analogregler (1-2-4) sind> 24V. Am BM1 v.04 etwa 34V. Etwas früher im Thread habe ich etwas über> abweichende Versorgungsspannungen gelesen...> Beitrag "Re: Junkers CAN-Bus Protokoll" - wie> würdest Du das einschätzen? Mögliche Fehlerquelle?
ja,..Das sollte ein und die selber Versorgung sein (unbelastet), also
auch die Werte.~~
Am BM1_Stecker ST1 (Kabel vom BM1 zur HP) sollte Am Pin 1 (24V) bzw. Pin
3(GND) 24V sein... auch an der HP vorhanden, allerdings vorsichtig
spiegelbildlich, nicht Pin identisch.
Alex
> Wechselspannungsanteil in beiden Fällen knapp 2V, kann aber eine> Ungenauigkeit meines Multimeters sein.
habe kein gutes Gefühl bei 2V unbelastet.
Alex
> Dann habe ich noch in meiner abgeklemmten Can-Wohnungsverkabelung die> nach einer möglichen Induktionsspannung gemessen (gegen Erde/Gasleitung)> - Stichwort 230V. Über 30V im Schirm, unterschiedliche Werte (zwischen> 10 und 25V) in den einzelnen Adern. Nach Entfernung meiner einen> Kreuzung (bzw. 230V Leitung stromlos gemacht) immer noch so. Nach> Abschaltung der gesamten Stromversorgung war es weg.
Das hört sich sehr abenteuerlich an, aber unbelastete Leitungen ist
möglich.
Mach Dich nicht unglücklich, die Gasleitung sollte mit PE verbunden
sein, aber nicht als PE_Leitung missbraucht werden.
Alex
> Ich habe dann leider herausgefunden (Leitungsfinder), dass quasi überall...
Sieht nach Jahresauftrag aus.
Alex
> Ob diese Induktionsspannung ursächlich sein kann, ggfs. auch was> kaputtgemacht hat? Ich weiss nicht wie viel Strom in den Can-Bus Adern> fließt, sprich was der "schlucken" kann..
Sicher ist das möglich ob es allerdings hier der Fall war...der CAN ist
relative sicher. In den meisten CAN-Adaptern fehlen die
Eingangssicherungsdioden hier.
Ich tippe eher auf die Versorgungsspannung bzw. auf die Mischspannung.
Alles nur wage Vermutungen, leider.
Schau ob deine Heizung fehlerfrei funktioniert.
Gruß
Gestern noch habe ich den TR220 direkt ans Busmodul angeschlossen, mit
kurzem Kabel, ohne Raspi, erstmal sah es ok aus.
WW hat an der Heizung immer funktioniert, dann habe ich noch ein paar
Tests im Heizbetrieb gemacht. Prinzipiell läuft der auch. Kann
modulieren, die Zieltemperatur erreichen, die Pumpe steuern.
Aus irgendeinem Grund ignoriert die Heatronic teilweise die von mir
eingestellten Werte zur Taktsperre und Schaltdifferenz und schaltet zu
früh den den Brenner wieder ein. Leider kann ich nicht sagen, ob die
Therme das Problem schon früher hatte, ich hatte sie ja im letzten
Winter noch nicht. Es ist eine der ersten -5 Geräte aus dem Jahr 1998.
Dann, gestern Abend noch Fehler AC an der Therme und heute morgen FF am
TR - also ein fehlerhaftes 206 Datagramm.
Ich habe dann die Therme ausgeschaltet, das Kabel vom Busmodul
abgesteckt, um die Spannung zu messen. Therme wieder an, ein lautes
Klacken wie von einem Relais oder einem platzenden Kondensator, Fehler
E0. Ich war da noch nirgends mit dem Multimeter auch nur in der Nähe.
Resetschalter gedrückt, Display dunkel. 0.5A Feinsicherung durch.
Sicherung ersetzt, seitdem scheint es wieder zu laufen, zumindest ein
paar Mal WW und ein kurzer Test im Heizbetrieb.
Ich fürchte, ich komme da um eine neue Hauptplatine nicht herum. Ich
könnte noch testen, ob die Analogregelung mit dem TR200 noch
funktioniert. Die Busschnittstelle rühre ich bei dieser Platine nicht
mehr an...
Gruß,
Alex
hallo Alex
> Es ist eine der ersten -5 Geräte aus dem Jahr 1998...
Ganz ehrlich... 25 Jahre, schau mal das Du eine "neue" gebrauchte billig
bei Klein... bekommst. Das würde sich eher lohnen als in deine alte noch
Geld zu pumpen.
Gruß
So, ich habe die Hauptplatine getauscht. Meine -5 ist in einem sehr
guten, sauberen und gewarteten Zustand, so dass ich sie schon behalten
will.
Ähm, beim Wechsel des Mainboards wurde der Grund für die dauernden
Kurzschlüsse offensichtlich. Murks von meiner Seite. Da hatte sich eine
Ader des Abschirmgeflechts der Can-Leitung unter den Modul-Anschluss 314
verirrt. Und deshalb auch ohne BM1 die Sicherung fliegen lassen.
Ich traue mich jetzt nicht, eines meiner beiden BM1 an das neue Board
anzuschliessen, auch wenn sie vielleicht noch gingen. Zumindest Busmodul
werde nochmal eins besorgen.
Ich habe da jetzt also 2 Busmodule, einen TA250 (der mit einem Busmodul
mitkam allerdings ziemliche Gebrauchsspuren aufweist) und 1 PiCan übrig.
Theoretisch auch noch die alte Hauptplatine.
@Peter - Kannst Du mit irgendwas davon was anfangen? Z.B. irgendwie
herausfinden, ob die Busmodule defekt sind und sie ggfs. reparieren? Ich
würde sie Dir schicken, wenn Du magst.
Ich melde mich dann nochmal wenn das neue BM1 da ist, dann nochmal die
Spannungen kontrollieren und sehen ob es das jetzt war.
Grüße,
Alex
Hallo Alex,
Alex
> So, ich habe die Hauptplatine getauscht. Meine -5 ist in einem sehr> guten, sauberen und gewarteten Zustand, so dass ich sie schon behalten> will.
Verstehe ich, meine Heizung ist jetzt nicht ganz so alt, aber von innen
fast wie neu. Allerdings nach 2008 sind die Heizungen schon besser
geworden und vor allem regelbarer.
Hast Du den Kodierstecker überprüft muss die gleiche "Nummer" haben.
Es schon mal Gut, das Du einen Fehler gefunden hast der die Kurzschlüsse
erklärt.
Alex
> Ich traue mich jetzt nicht, eines meiner beiden BM1 an das neue Board> anzuschließen, auch wenn sie vielleicht noch gingen. Zumindest Busmodul> werde nochmal eins besorgen.
Das würde ich auch sein lassen, die Empfindlichkeit des BM1 hat jeder
schon mal erfahren.
Alex
> @Peter - Kannst Du mit irgendwas davon was anfangen? Z.B. irgendwie> herausfinden, ob die Busmodule defekt sind und sie ggfs. reparieren? Ich> würde sie Dir schicken, wenn Du magst.
Danke,
aber zeitlich bekomme ich das momentan überhaupt nicht hin und eine
Reparatur, nee sowas lohnt sich nicht (zur Zeit) und eine Verantwortung
zu übernehmen für 10 bis 20 Jahre alte Teile ist eher ausgeschlossen.
Wenn Du sie mir zuschicken willst ohne retour und der Option der
Entsorgung, werde mal kurz drüber schauen und Du kannst dann evtl. den
TR freisprechen nach einer Strommessung an einer separaten 24V
Stromquelle.
Hoffe es klappt alles.
Gruß
Hallo Peter,
> Hast Du den Kodierstecker überprüft muss die gleiche "Nummer" haben.
Ja, ich habe die Werte des Kodiersteckers sowie ein paar Sensoren und
Einstellungen vorher ausgelesen und mit den neuen Platine überprüft bzw.
eingestellt. Das sieht alles gut aus und läuft.
> Wenn Du sie mir zuschicken willst ohne retour und der Option der> Entsorgung, werde mal kurz drüber schauen ...
Klar, ich wollte ohnehin nichts davon zurückhaben. Wenn Du dir was davon
ansehen willst, schreib mir doch noch was genau (oder alles) und deine
Adresse per privater Nachricht.
> ... und Du kannst dann evtl. den TR freisprechen nach einer> Strommessung an einer separaten 24V Stromquelle.
24V Netzteil habe ich leider nicht, und mir fällt auch gerade kein Gerät
ein wo ich die abzweigen könnte. Ich habe aber ein regelbares Netzteil,
was bis 16V geht. Testweise habe ich den (übriggebliebenen) TA250
angeschlossen, er scheint auch mit 16V zu funktionieren und zieht dabei
20mA.
Spricht etwas dagegen den TR derselben Prozedur zu unterziehen?
Grüße,
Alex
Hallo,
mit 16 V laufen die auch. Der Stromverbrauch liegt zu mindestens im
annehmbaren Bereich. Bis um die 40mA bei 24V. Der Can-Bus ist natürlich
auch noch mal eine Belastung.
Test: !!!! BM1 nur an 16V; Strom messen! Pin 1 +, Pin 3 GND "Stecker
ST1"
--> TA250 an 16V bzw. über Can-Bus an BM1(versorgt) Strommessung.
--> Alter CAN-Bus Adapter noch ok??? (Selbsttest)
wenn ja verbinden mit (BM1 und TA250).
GND nicht vergessen von PiCan-Adapter Spannung und Strommessung
Kommunikation vorhanden? Dauerbetrieb.
dein Netzteil sollte um 200mA können und am besten den Strom begrenzen.
oder TR200 statt TA
Dann sehen wir weiter!
Hallo Peter,
> Test: !!!! BM1 nur an 16V; Strom messen! Pin 1 +, Pin 3 GND "Stecker> ST1"
Ok. BM1 (Nr. 1, das ursprüngliche) 16V Input, nur 13V Output an Kl. 1
und 4, dabei 20mA Stromaufnahme ohne irgendetwas dran.
BM1 (Nr. 2 das neulich gekaufte) 16V Input, 16V Output, keine messbare
Leistungsaufnahme ohne was dran.
Ergo vermute ich, dass das 1. Modul defekt ist.
> --> TA250 an 16V bzw. über Can-Bus an BM1(versorgt) Strommessung.
TA direkt über das BM1 (2) angeschlossen - läuft bei 20mA
> --> Alter CAN-Bus Adapter noch ok??? (Selbsttest)
Hmm... aus irgendeinem Grund kann ich den nicht konfigurieren, wenn beim
Einschalten des Raspberry der Bus schon angeschlossen ist. Konfiguriere
ich ihn erst und schliesse dann den Bus (BM1 und TA) an, geht es. Könnte
ein Defekt am Modul sein oder auch damit zu tun haben, dass es ein
anderer Raspberry ist (mein Pi 4 Desktop anstelle des Volkszähler-Pi3).
> wenn ja verbinden mit (BM1 und TA250).
Der TA fängt dann an Datagramme zu senden, vom BM1 sehe ich nichts. Ich
vermute das ist normal, er bekommt ja seinerseits keine Daten über I2C.
> GND nicht vergessen von PiCan-Adapter Spannung und Strommessung
Das Labornetzteil bleibt bei 20mA. Die Spannung zwischen Can-Low und
Can-High liegt lediglich bei 2.2V, ähnlich Can-to-GND. Als ich zuletzt
bei laufendem Bus an der Therme gemessen habe, waren es über 4V. Könnte
an der zu geringen Versorgungspannung liegen (16V anstelle von 24V)?
> Kommunikation vorhanden? Dauerbetrieb.
Der TA sendet und das PiCan kann es lesen... auch kann ich vom Raspberry
Datagramme aus dem Bereich der Therme senden (z.B. Vorlauftemperatur)
und der TA zeigt es korrekt an. Je nachdem was ich sende kann ich vom TA
auch ein sinnvolles Regelverhalten sehen... z.B. durch "Absenken" der
Aussentemperatur.
Der TA zeigt jedoch wechselnde Can-Fehler an...
Ich werde den Test wohl in ähnlicher Form mit dem "richtigen" TR, PiCan
und der Hausverkabelung wiederholen, nur eben ohne die Verbindung zur
Therme...
Grüße,
Alex
Alex schrieb:> Ergo vermute ich, dass das 1. Modul defekt ist.
Da habe ich wohl falsch vermutet...
Nach etwas Nachdenken (ein funktionierendes Modul muss ja auch selbst
Leistung aufnehmen) habe ich dann den Test mit dem BM1(1) wiederholt.
Die Gesamt-Leistungsaufnahme liegt jetzt bei 100mA und das Modul
sendet Werte wenn auch "leere", meist 00.
Der Can-Fehler am TA ist weg. Die Spannungen am Bus scheinen wieder
plausibler, um die 4.6V wie auch an der Therme.
Die Versorgungsspannung an Kl. 1 und 4 sinkt unter last auf 12V ab.
Wirklich traue ich keinen von beiden Modulen. Morgen bekomme ich ein
"neues".
Grüße,
Alex
Hallo,
die Stromaufnahme muss sich addieren!
Alex:
> BM1 (Nr. 2 das neulich gekaufte) 16V Input, 16V Output, keine messbare> Leistungsaufnahme ohne was dran.
nicht logisch! evtl. defekt
> Ergo vermute ich, dass das 1. Modul defekt ist.
Nein
Alex
> Der TA fängt dann an Datagramme zu senden, vom BM1 sehe ich nichts. Ich> vermute das ist normal, er bekommt ja seinerseits keine Daten über I2C.
Ja, es sollte aber F9 und Außentemperatur (Widerstand (Tabelle) am
Stecker) kommen evtl. noch andere mit null Wert. Es geh hier um die
Telegramme nicht um den Inhalt, erst mal.
So richtig befriedigend hört sich das nicht an. Vermische jetzt nicht
Teile die ein ? haben mit neuen Teilen, dann hast Du bald wieder das
Große ?.
Gruß
Hallo Peter,
ich habe nach dem Beitrag den Du zitierst gleich noch einen geschrieben,
und meinen Fehler erkannt...
... jetzt gerade läuft der Testbetrieb mit BM1(1), Hausverkabelung, TR
und Pican-2. Mal sehen was da bis morgen an Daten zusammenkommt.
Schönen Abend,
Alex
Alex schrieb:> Die Gesamt-Leistungsaufnahme liegt jetzt bei 100mA und das Modul> sendet Werte wenn auch "leere", meist 00.> Der Can-Fehler am TA ist weg. Die Spannungen am Bus scheinen wieder> plausibler, um die 4.6V wie auch an der Therme.> ... jetzt gerade läuft der Testbetrieb mit BM1(1), Hausverkabelung, TR> und Pican-2. Mal sehen was da bis morgen an Daten zusammenkommt.
Über Nacht stabil gelaufen, keine falschen Werte in der DB von insgesamt
fast 4000, nur eben mit Wert 00 in den Datagrammen vom BM1, korrekte
Werte vom TR220. Keine Paketfehler im Interface des Raspberry.
Stromaufnahme bleibt bei 100mA lt. Labornetzteil.
Damit bin ich jetzt schon einen Schritt weiter. Wäre der Fehler im
PiCan, im TR, oder in der Verkabelung, hätten sich die berüchtigten
Ausreißer in der Werten auch übernacht zeigen müssen.
Mein Plan wäre: Denselben Test nochmal mit dem für heute erwarteten
"neuen" BM1 wiederholen, wenn keine Auffälligkeiten -> BM1 an die Therme
anschliessen, ggfs. vor Anschluss des Bussteckers nochmal die Spannung
messen.
@Peter - sind die 100mA bei 16V im Rahmen? Der Logik nach müssten es ja
mit 24V dann etwas weniger sein.
Grüße,
Alex
Hallo,
zum Stromverbrauch meines Schreibtischtest bestehend aus BM1 V0.2 und
TA270 einschließlich des NTC kann ich Dir folgende Werte mitteilen.
Hierbei wird wird keine Kommunikation überwacht noch auf Fehler
geachtet.
Ab 12 V ist das Display vom TA 270 sicher aktiv, etwa 130 mA, aber zu
realistischen Werten von 16V, der Stromverbrauch beträgt bei mir 93 bis
95 mA.
17V---90mA; 18V---87mA; 19....23V---85...70mA; und schließlich 24V mit
68mA.
Meine Stromwerte sollten eine Toleranz +-1 mA haben, Labornetzteil.
Bei Kommunikation können nochmals ein paar mA dazu kommen. Hatte früher
immer um 80mA bei 24V.
Was ist mit dem 2.BM1 bis Du sicher das es sich hier um ein BM1 handelt
und nicht um ein BM2.
Gruß
Hallo Peter,
dann gehe ich mal davon aus, dass mein Stromverbrauch im Rahmen ist.
Was meinen Fehler betrifft. Ich hatte ja immer wieder falsche Werte
geloggt, wie z.B. 255 bei 209 oder 20A. Wenn die nicht so vom BM
gesendet worden wären sondern erst durch einen Busfehler entstanden,
dann müsste ich ja solche verfälschten Datagramme jetzt - ohne Therme -
ebenso aufzeichnen. Aber die sind immer gleich, im Zweifelsfall 00.
Peter* schrieb:> Was ist mit dem 2.BM1 bis Du sicher das es sich hier um ein BM1 handelt> und nicht um ein BM2.
Das ist eines aus der Zeit bevor zwischen BM1 und BM2 unterschieden
wurde, FD Oktober 1998. Ich frage mich für diese Ausführung evtl. die
Spannung von 16V zu niedrig ist?
Gruß,
Alex
Hallo,
sieht zu mindestens so aus.
Nun zum BM1, ich kenne Beschreibung von Bosch für diese Art und das
müsste ja die letzte sein? Aber eine Kaskadensteuerung BM2, wurde hier
schon mal behandelt.
Dein BM1 weist auch auf keine Stromsteuerung hin. Die BM2 hingegen
braucht diese nicht.
Alex
> Das ist eines aus der Zeit bevor zwischen BM1 und BM2 unterschieden> wurde, FD Oktober 1998. Ich frage mich für diese Ausführung evtl. die> Spannung von 16V zu niedrig ist?
Glaube ich weniger das die Spannung nicht ausreicht. 5V ist nur der
Arbeitsbereich.
So wie ich es gelesen habe ist ab 2002 BM2.
Gruß
Hallo,
solltest Du immer noch die Möglichkeit in Betracht ziehen mir das
defekte BM1(2.) mir zu zusenden,.. würde mich gerne mal mit dem Aufbau
beschäftigen.
Kenne nur Bilder.
Hoffe auch weiterhin das alle anderen Test ok sind.
Gruß
Hallo Peter,
> solltest Du immer noch die Möglichkeit in Betracht ziehen mir das> defekte BM1(2.) mir zu zusenden,.. würde mich gerne mal mit dem Aufbau> beschäftigen.> Kenne nur Bilder.
Na klar, schick' mir doch einfach Deine Adresse..
> Hoffe auch weiterhin das alle anderen Test ok sind.
Noch läuft das Ganze mit BM1(1) am Labornetzteil... ich war gestern
nicht da als DHL mit dem BM1(3) kam.
Grüße,
Alex
Es ist wirklich ein Krimi. Heute habe ich das "aufgearbeitete" BM1 (das
3.) bekommen. Man sieht, dass zumindest zwei von den Kondensatoren
ausgetauscht wurden.
Die Sekundärspannung schwankt stark. Das Multimeter springt zwischen 14
und 0 Volt und allen möglichen Werten dazwischen hin und her. Ich gehe
davon aus dass das nicht so sein soll und habe den Verkäufer gebeten, es
zurückzunehmen.
Da nun mein ursprüngliche BM1(1) zwei Tage fehlerfrei mit am
Labornetzteil lief, habe ich es gewagt, es an die Therme anzuschliessen.
Unbelastet messe ich am Ausgang 16V, belastet 13,5. Die Busspannung
liegt bei 4,7V.
Bislang sieht alles gut aus. Seit Stunden keine Fehler am Bus, keine
falschen Werte. Habe den Heizmodus und das Regelverhalten erfolgreich
getestet. Auch Taktsperre und Schaltdifferenz greifen jetzt - keine
Ahnung ob das mit der alten Hauptplatine ein Fehler der Software (eine
der ersten HT-2 von 98) war oder schon ein Fehler, der durch den
Kurzschluss ausgelöst wurde.
Ich grübele wegen der 16V am Busmodul-Ausgang. So wie ich es verstehe
sollten es 24 sein... richtig? Allerdings habe ich weiter oben im Thread
gelesen, dass so etwas durchaus sein kann...
Jörg R. schrieb:> Seltsamerweise machen beide Module aus der von der Therme kommenden> Spannung von 24V was anderes außerhalb der Spec, nämlich einmal knapp> 15V (BM1, alt) und einmal knapp 30V (BM2 neu, aber nach Verschiebung,> das hatte erst saubere 24V geliefert!). Die TA funktioniert mit> beiden...
@Peter - meinst Du, ich sollte mir da Sorgen machen und doch nochmal
nach einem anderen Modul Ausschau halten?
Grüße,
Alex
Hallo,
kann ich bestätigen hatte ähnliche Werte, nur unterhalb von 24V ist
richtig. Habe mir leider damals keine Notizen gemacht warum dies
überhaupt möglich ist.
Aber der LM317 (Bauteilgehäuse To220) ist als Stromquelle geschaltet
könnte sein das hier eine Variabel verborgen ist.
Trotzdem sollte am Pin1 von Stecker ST1 zur GND 24V sein. Vorsichtig!!!
wenn Du das messen willst am Ofen.
Die aufbereiteten Module würde ich nicht kaufen.
Die Unsicherheit kann ich Dir nicht nehmen, vielleicht hätte ich noch
etwas länger getestet. Du siehst aber auch das Du halt nur gebrauchte
Module bekommst und die teuer bezahlen sollst. Der Zustand bleibt halt
verborgen, dein Modul hat wohl ein Fragezeichen es funktioniert aber.
Vielleicht nochmals den Strom vom TA und TR messen am Labornetzteil.
Gruß
Hallo, kennt jemand den Steckertyp für ST7 ("I2C") bzw. ST9 TA
("Busmodul")?
Geht wohl in Richtung Weald Edgecard (2.54mm), Lumberg RAST-2.5
(2.50mm...), oder angesägte TE 7-5530843-5 (2.54mm pitch)?
Das offizielle Kabel könnte Bosch 87144041510 sein. Auch sau teuer. Hat
jemand sein eigenes Kabel basteln können?
Übrigens: Pinout vom Kartenrand für ST7 folgt den direkt darüber
liegenden Testpads "GND 5V SDA SCL". D.h. auf der Oberseite 1=GND, 2=5V,
3=SDA, 4=SCL. Pins 3 und 4 haben jeweils einen 10 kOhm pull-up auf 5V.
Auf der Unterseite sind die pins unter 3(SDA) und 4(SCL) nicht direkt zu
SDA bzw SCL durchkontaktiert. Es sind 100 Ohm dazwischen. Etwas
unerwartet. Frage mich ob der Stecker die 100 Ohm quasi überbrücken
soll.
And ST9 hatte ich noch nicht gemessen, evtl. ist es dort ähnlich. Das
Kabel für BM1 ist auch nur 6-polig, obwohl die PCB beidseitig insg.
12-polig wäre.
Guten Abend zusammen,
ich habe eine Junkers Therme ZSB 7-22 A21 mit TA211E und DT1,
Konfiguration wie hier:
https://www.heizungsforum.de/attachments/20201208_195930411_ios-jpg.14023/
Ich habe im Flur eine DUO LED zur Signalisierung ob Tag oder
Nachtbetrieb. Die hängt momentan direkt an der DT1. Wenn man nun am
TA211E auf dauerhaft Tag stellt, sieht man das im Flur nicht - das hätte
ich gern anders.
Ich habe gesehen dass es anscheinend ein Flag in einem Datenstrom dafür
zu geben scheint.
https://docs.google.com/spreadsheets/d/1JzmhEbFY_GSk0Dl_e5pb2zmsy9EPlQU7bUpb9bXKxCM/edit#gid=0
0x250 0x95 Heizkreislauf Heizbetrieb RC 1 = An | 0 = Aus
Kann das sein. gibt es eine einfache Möglichkeit da ran zu kommen und
dann zwei Pins so zu steuern dass ich dort die DUO LED dran basteln
kann?
Danke
Hallo Daniel,
mit dem TA211E hast Du kein CAN-Bus!
Über die Karte TA211E werden deine Einstellungen(in Spannung)
sequentiell als Frequenzpakete(8 an Zahl) im Takt zur Hauptplatine
übertragen.
Schau mal Seite 1 26.09.2022 07:11.
Wenn Du das richtige Paket mittels Arduino oder so... selektierst und
die Frequenz dazu bestimmst und zuordnest (TAG, Programm, Nacht), kannst
Du die entsprechende LED ansteuern. Sollte auch funktionieren.
Attiny sollte auch funktionieren.
Muss allerdings gestehen, das mir hier der Sinn fehlt.
Ich hab meinen ESP32 bestimmt 20 geflashed, aber ich bekomme keine
Response.
Ich habe firmware.bin und littlefs.bin aus dem Internet genommen, ich
habe aber auch die firmware selbst compiliert mit angepasster
configuration.json Datei.
Was auch immer ich versuche, ich bekomme weder einenAP, noch einen
Verbindung zum wifi.
Ich gehe davon aus das irgendetwas grundsätzlich falsch mache...
Muss ich noch irgend einen bootloader installieren?
oder ein Standard Betriebssystem?
./esptool --after no_reset --chip esp32 --baud 115200 --port
/dev/cu.usbserial-0001 write_flash --verify 0x10000
/Users/zodiac/Downloads/firmware.bin
Connecting....
Chip is ESP32-D0WD-V3 (revision 3)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding
Scheme None
Crystal is 40MHz
MAC: fc:b4:67:f5:98:a0
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Flash will be erased from 0x00010000 to 0x0010cfff...
Compressed 1032416 bytes to 652001...
Wrote 1032416 bytes (652001 compressed) at 0x00010000 in 57.7 seconds
(effective 143.2 kbit/s)...
Hash of data verified.
./esptool --after hard_reset --chip esp32 --baud 115200 --port
/dev/cu.usbserial-0001 write_flash 0x307000
/Users/zodiac/Downloads/littlefs.bin
Connecting....
Chip is ESP32-D0WD-V3 (revision 3)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding
Scheme None
Crystal is 40MHz
MAC: fc:b4:67:f5:98:a0
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Flash will be erased from 0x00307000 to 0x003f6fff...
Compressed 983040 bytes to 367008...
Wrote 983040 bytes (367008 compressed) at 0x00307000 in 33.4 seconds
(effective 235.4 kbit/s)...
Hash of data verified.
Hallo,
bist Du sicher, das Du hier richtig bist? Es fehlt wohl noch etwas was
Du vor hast?!
Die Version Wlan zu Can-Bus wird sicher auch funktionieren, aber nur mit
ESP-CAN Driver-Junkers eher unwahrscheinlich.
Peter* schrieb:> Hallo,>> bist Du sicher, das Du hier richtig bist? Es fehlt wohl noch etwas was> Du vor hast?!>> Die Version Wlan zu Can-Bus wird sicher auch funktionieren, aber nur mit> ESP-CAN Driver-Junkers eher unwahrscheinlich.
Danke Peter, genau da meine ich ja.
Ich wollte die Firmware von Dave benutzen, habe aber bisher nur die
beiden Dateien auf den ESP geladen.
Muss man vorher ein bootloader oder ein Standard Betriebssystem flashen
und dann Firmware.bin und Mittlers.bin?
Hallo,
Dave ist schon längere Zeit nicht mehr aktiv.
Bin selber kein Freund von der ESP_Programmierung und habe auch Dave's
Programm nie direkt genutzt und somit auch keine Hilfe. Aber evtl.
besteht das Problem im neueren Prozessortyp. -->Elektronik
Zum Programm selber glaube ich, wie damals auch mitgeteilt habe, dass es
so nicht richtig funktionieren kann.
Nur Kurz ... die Ventilsteuerung_Raum (ELV oÄ.) ist ein eigenständiger
Regelprozess (2.Pkt: 0 Wert Temperatur erreicht) und kann nur bedingt
benutzt werden zur Heizungsteuerung allgemein, bzw. der
Vorlauftemperatur. Weiterhin muss TA250...270 ersetzt oder ausgeklammert
(Telegramm) werden, weil sonst unterschiedliche Werte der Vorlauftemp.
auf dem CAN-Bus liegen.