Bitte um Hilfe für ein Brennersteuerungsskript

Hallo an Alle, entschuldigt mal wieder die bitte um Hilfe.

Ich habe mich mal daran gewagt meine Heizungsanlage komplett über Symcon zu steuern.

Mit Hilfe von zwei User Freunden funktioniert es bis auf die Brennersteuerung schonmal sehr gut.

Ich habe um die Heizkennline zu berechnen ein Skript aus einem anderen Beitrag vom Forum zurück gegriffen und auch das läuft separat als Test in der Webfront und schickt ordentliche Vorlauftemperatur Werte.

Die Idee ist es jetzt ein Skript zu schreiben Das die errechnete Vorlauftemperatur liest und den Brenner dann immer mit einer Tolerant von bis zu -8 Grad an schaltet.
Sprich Vorlauf momentan soll 65 Grad, Brenner auf true, bei erreichen von 65 Brenner false, bei Unterschreitung von 57 grad Brenner wieder auf true bis zur momentan verlangten Vorlauf Temperatur.

Hoffe das ich das nicht zu falsch beschrieben habe und man versteht was ich meine.

Danke im Voraus für eure Hilfe, denn beim Skripten komm ich leider selber garnicht weiter :-(.

Gruß Pedro

Prinzipiell kommt es hier immer gut an, wenn man seine bisherigen Ergebnisse zeigt und beschreibt, was schon geht und was noch nicht so richtig funktioniert.

Ich bitte nochmals um Entschuldigung,

Ich versuche mal nicht zu weit auszuholen, Problem ist das meine Heizungssteuerung leider defekt ist und ich dadurch im letzten Jahr dreimal soviel strom und ca 500-700 Liter mehr Heizöl verbraucht habe als vorher.

Ein Heizungsbauer wollte natürlich gleich abhilfe schaffen und mir eine neue Heizung verkaufen was total Blödsinn ist weil die alage an sich super läuft.

Dann haben wir uns gedanken gemacht und mal alle pumpen über meinen KNX aktor gezogen, die Temperaturen haben wir über einen Kleinen ESP und das neue MQTT in Symcon einbinden können.

Jetzt schalte ich also schonmal wieder anständig meine Pumpen :slight_smile:

Gerne würde ich es auch Testen die Brennersteuerung über Symcon zu machen, da Bräuchte ich aber bitte eure Hilfe dazu.

Hier mal noch der Beitrag wie die die Heizkennlinie Berechnet wird.

Kopiert:
Hi,

für die Berechnung einer Heizkurve gibt es viele Lösungen. Die einen machen es linear, die anderen mit Krümmung, noch andere mit mehreren Krümmungen und jeder meint er hat die Beste

Hier mal ne Lösung wie ich es mache. Die Heizkurve ist mit Raumeinfluss (was ich dir empfehle zu machen, da du ja eine Einzelraumregelung hast):

PHP-Code:
//Aussentemperatur abfragen
$at = GetValueFloat(57104 /[Wetterstation\Wetter Aussentemperatur]/ ); // AT

//Berechnung
$t1 = ($at/(320-$at4));
$t2= pow($sw,$t1);
$swhk = Min(Max((((0.55)
$steil *($t2) *((-$at +20)*2)+ $sw + $kh) + ($maxabw * $verst)), $minvl ), $maxvl );

//Ausgabe VL-Sollwert
SetValueFloat(33989 /[KG\Heizung\Heizung Regler Heizkreise\Heizung Sollwert Vorlauf Heizkreise]/ ,$swhk);
Ich habe die Formel mal etwas aufgebröselt mit den Variablen $t1,$t2 damit es etwas übersichtlicher wird (kannst du ja dann ändern).

$sw = Raumsollwert (z.B. 21°C)
$swhk = Berechnete Vorlauftemperatur
$steil = Steilheit Heizkurve (z.B. 1)
$kh = Parallelverschiebung (z.B. 5)
$maxabw = Max. Regelabweichung der Einzelraumregler
$verst = Verstärkungsfaktor (z.B. 3)
$minvl = Mindesttemp. Vorlauf (z.B. 25°C)
$maxvl = Maxtemp. Vorlauf (z.B. 70°C)

Danke und Grüße

Moin,

ich würde das so oder ähnlich machen:


//Script ausführen auf Änderung der Vorlauftemp.
$Hysterese = 8; //Temperaturdifferenz in Kelvin, so weit darf die Vorlauftemperatur abfallen bevor der Brenner startet
$VarIDVorlaufIst = 12345;
$VarIDVorlaufSoll = 54321;

$VarValVorlaufIst = GetValueFloat ($VarIDVorlaufIst);
$VarValVorlaufSoll = GetValueFloat ($VarIDVorlaufSoll);


if($VarValVorlaufIst < ($VarValVorlaufSoll - $Hysterese))
	Befehl für Brennerstart
elseif ($VarValVorlaufIst >= $VarValVorlaufSoll)
	Brenner aus

würde man aber nicht normalerweise um die errechnete Vorlauftemp herum regeln ? also bei denen 8° Vorgabe: Brenner an bei Vorlauf-4 und Brenner aus bei Vorlauf +4 ? Oder schwingt das System nach oben hin sowieso über ?

Nicht getestet, nur so zusammengeschrieben … auch auf Variablentypen achten.
Das müsste aber auch ganz ohne Script schreiben gehen … mit diesen neuen Zusammenklickbaren Ereignissen ?!

Edit: ich habe geantwortet bevor ich deinen neuesten Post gesehen habe, am elegantesten wäre es doch die Brenneranforderung direkt von dem Vorlauftemp. Script mit ausgeben zu lassen.

Noch eine Idee: Was passiert bei Ausfall von Sensorwerten oä. ? Muss man da nicht noch Sicherheiten einbauen ? Oder fährt die Heizung dann „nur“ auf einer sehr hohen aber unkritischen Temperatur im schlimmsten fall ?

Edit2:

Ist das wirklich so Blödsinnig ? So ganz Billig sind doch die 800 Liter auch nicht :stuck_out_tongue:
Mal im Ernst: Man regelt doch heutzutage die Vorlauftemperaturen relativ genau, weil man die Brenner Modulieren kann mit den neuen Heizungen. Mit den anderen Techniken die da noch zum Einsatz kommen verbrauchen die neuen ja dann angeblich erheblich weniger. Kommt bestimmt auch auf die Umgebungsbedingungen an ob sich sowas mal auszahlt … nur so eine Idee.

Hallo Pedro,

ich habe meine Ölheizung komplett über IP-Symcon am laufen, aber mit einem Raspberry.
An den GPIO’s ist der 1wire Bus und eine 8fach Relaiskarte angeschlossen, so habe ich Hard- und Software auf einem Gerät.
Sieht so aus :

Bei Bedarf kann ich dir die Skripte zippen und per Mail senden.

Hallo Pedro85,

wenn ich diesen Thread lese, kriege ich Gänsehaut. Bitte unbedingt sicherstellen, dass bei der defekten Brennersteuerung wenigstens die Sicherheitsfunktionen noch zweifelsfrei laufen. Ansonsten Finger weg!

Symcon ist nicht für Sicherheits- sondern ausschließlich für Komfortfunktionen geeignet. Sicherheitsfunktionen sind immer durch die Hardware sicherzustellen. Das gilt insbesondere wenn Du keine Erfahrung mit der Programmierung hast.

Solltest Du auch von den Steuerungsprozessen Deiner Heizung keine Fachkenntnis haben, kann ich Dir nur DRINGEND VON DEINEM PROJEKT ABRATEN!

Viele Grüße
Jürgen

Das hatte ich in meinem Post ja auch schon erwähnt, bzw. gefragt, weil ich keine Ahnung habe was passiert wenn der Brenner ungeregelt einfach durchläuft.

Ich persönlich würde übrigens IPS auf einer vernünftigen Hardware in verbindung mit KNX aktoren wie der TE sie hat einem Raspberry vorziehen. Das sind aber nur meine persönlichen Erfahrungen, ich hatte auf dem Raspberry „nur“ OsCam laufen als die SD sich verabschiedet hat, nicht so ärgerlich wie kalte füße oder ne abgefackelte Heizung, aber trotzdem passiert als ich länger nicht Zuhause war und keiner mehr Fernsehen konnte …

Falls man mittlerweile zuverlässige Speicher ohne Basteln nutzen kann, korrigiert mich gerne, würde mich auch Interessieren

zuverlässige Speicher ohne Basteln

bin bei meinen Raspis auf SSD M2 umgestiegen mit Adapter an USB

Moin,

Kesselsteuerung, alles was zum Sicherheitzkreis gehört wird nicht verändert !
Kesselthermostat, Sicherheitstemperaturbegrenzer usw bleibt, es wird nur die externe Witterungsgeführte Steuerung ersetzt.
Ich habe 2015 meine Steuerung ersetzt, dürch einen Raspberry, und die läuft heute noch ohne mucken.:wink:
Falls mal die SD abrauchen sollte, steckt eine Ersatz SD neben dem Gerät.
Falls die Steuerung ausfällt, schaltet der Brenner über den Kesselthermostat ab und gut.
Der Betrieb ist dann genau so, wie ohne Witterungsgeführte Steuerung, also Handbetrieb über verstellen des Kesselthermostaten.
Und der Handbetrieb kostet Geld (Öl), da dann meistens eine zu hohe Temperatur eingstellt ist.

Aber ich würde auch erst mal den Schaltplan der Heizung sehen wollen, bevor da was umgebaut wird.
Und bei der Temperaturmessung über ESP (Wlan), dass würde ich dann doch nicht so machen, sondern alles in ein Gerät packen !
Helmut hatte auch eine Heizungssteurung per Pokeys gemacht, ev. ist das auch noch was.

Hallo Thomas,
bei Dir mache ich mir auch keine Sorgen. :slight_smile: Du weißt was Du da tust und kannst einschätzen, welches Risiko ggf. aus Deinen Änderungen entsteht.
Wenn man dieses Wissen aber nicht hat, sollte man sich einen Fachmann holen oder erstmal mit unkritischeren Sachen beginnen.

Viele Grüße
Jürgen

Hallo Jürgen,
so isses.:smiley:
Aber warten wir mal ab, welche Info’s uns Pedro liefert.
Gebraucht wird Schaltplan, was ist alles an der Heizung vorhanden ist, wie Pumpen, Mischer, Heizkreise,WW-Speicher,welcher Kessel genau usw
Danach kann man mal schauen, was geht.

Erstmal Danke für eure schnellen Antworten und die Angst um meine Sicherheit :blush:.

Die alte Steuerung bleibt für die Sicherheitsabschaltung erhalten. Nach Absprache mit dem Heizungbauer wird nur das Signal zum starten über einen Kanal in Schleife gezogen.

Also die Heizung steht auf Handbetrieb und der Kessel ist auf 80grad eingestellt.

Auch wenn symcon 100 grad schicken würde, geht der Brenner bei 80 grad aus.

Grüße

Hi Pedro,

ich habe mir überlegt, wie ich das machen würde und habe mal ein Beispiel mit dem Heating Control von Symcon erstellt.

Dazu bin ich von Deinen 8 Grad Hysterese ausgegangen, die nur „nach unten“ funktionieren dürfen.

Video zu meiner Teststellung.
Viel Spaß beim Anschauen und Umsetzen. Am besten das Video herunterladen und mit VLC anschauen.

Hallo Pedro85,
das hört sich gut an. Dann wünsche ich viel Erfolg.
Viele Grüße
Jürgen

Hi
So wie bei Tom läuft auch hier die Heizung incl. thermischer Solar schon seit Jahren komplett über IPS.
Auch hier steht der Brenner auf Handbetrieb 80°. Zur „Regelung“ wird dem Brenner einfach nur der Strom An und Abgeschaltet.
Damit sind alle Sicherheitsaspekte erfüllt und ISP kann loslegen.
Senoren, Pumpen und Stellventile bedient außschließlich IPS. Über einen kleinen Hardware Watchdog wird IPS von extern überwacht. Falls dieser anspringt werden über eine Relais/Diodenmatrix der Brenner fix eingeschaltet und wichtigsten Pumpen auf Dauerbetrieb. Das ist dann zwar nicht effizient, aber für den Notfall ist das egal.

Hardwareseitig verwende ich 1Wire mit einer selbstgebauten Relaisgruppe.

Allerdings ist es schwierig hier beim Scipten zu helfen. Der Kern der Sache ist das es nur dann effiziennt ist wenn man es ganz exakt auf die eigenen Bedürfnisse und Heizungsanlage anpasst. Wenn man es gut machen will ist das alles sehr individuell und viele viele Stunden Arbeit. Weiters ist auch ein entsprechndes physikalisches Verständniss absolut notwendig. Permanenntes logging und Nachbesserungen sind ebenfalls wichtig.

Verbrauchsseitig war es den Aufwand in jedem Fall wert. Wie dargestellt braucht es aber Randbedingungen und geht nicht eben mal so.

viel Glück
bb

Hallo BB,

so läuft es auch hier. Ich denke aber, das Grundskript zur Berechnung der Heizkurve kann man erst mal als Grundlage nehmen.
Ich habe da alle Werte einstellbar im Webfront liegen, und kann so alles zur Laufzeit verändern.
Und ja, es macht viel Arbeit, bis das ans Haus angepasst ist. Ich habe noch das Problem, es sind 4 Wohnungen, die alle etwas anders ticken.
Das läuft hier besser, als die orginal Steuerung von 1996, die auch schon recht viel konnte, aber immer mal wieder defekt war.
Ich hasse Steuerungen, die nur eine Lebenszeit von 10 Jahren haben, weil fest verbaute Batterien drin sind, die nicht auswechselbar sind.
Wenn die leer ist, sind die Daten weg, und da nutzt ein auswechseln nicht, man braucht die Service Unterlagen, die der Hersteller nicht rausrücken wollte, sondern eine neue Steuerung für viel Geld verkaufen wollte. Bin dann aber doch an die Unterlagen gekommen, Batterie ausgewechselt, Betreibsparameter vom Brenner wieder eingetippt, und läuft wieder. Bleibt jetzt als „Sicherung“ liegen.:smiley:

Hi Tom
natürlich werden auch hier alle Parameter übers WF eingestellt. Die Herausforderung ist die richtige Balance zwischen hardgecodeten und einstellbaren Parametern zu finden. Schließlich sollte es auch von jemanden bedient werden können der nicht allzu tief drinnen ist.
Umgekehrt macht es auch keinen Sinn andauernd in den Scripten rumzurühren.

Für mich extrem wichtig ist eine gute Visualisierung.
Ich zitiere mal meinen exBoss den ich unheimlich schätzte: " You cannot fix what you cannot see"

Habs ja schon öfters gezeigt, aber nochmal eine kleine Auswahl der Visu:

Die bekannte Liveview:

Die Konfiguration:

ein schönes Beispiel wie die Mischersteuerung arbeitet, derartige Plots hab ich viele, alles zur Analyse und Optimierung

natürlich spielen auch die Raumtemperturregler mit rein.

Ich verwende übrigens nicht wie üblich eine Heizkurve, sondern versuche die Vorlauf und Kesseltemperatur über den Wämebedarf der Räume zu bestimmen.

Da sich die Frage eigentlich um das Scripting ansich ging: Die Heizungssteuerung war eigentlich der Anfang meiner Smarthomeaktivitäten. Vor sehr vielen lief Jahren lief eine erste Version mittels PERL Script unter FHEM. Damals wurden noch alle Sensoren regelmäßig gepollt und dann in einem Monster langen Script verarbeitet.
Irgendwann kahm IPS und das PERl Script wurde 1:1 nach PHP übersetzt. Später mal dann gab es wieder Überarbeitungen und des wurde alles schön in kleine eventgetriggerte Scriptmodule umgebaut.
So ist es noch heute. Es ist kein monolithisches Script, sondern kleine überschaubare Teile. Auch dazu brauchte ich einige Learnings um zu identifizieren wie man die Architektur sinnvoll aufsetzt. Programierprofis mögen darüber lächeln, für Hobbyhacker ist das aber schon Thema.

Was wäre zu verbessern:

  • noch ein ein paar hardwareseitige Jugendsünden ausmerzen. Das 1Wire/Relaisinterface ist selbstgestrickt, wie üblich zusammengebrutzelt - und geht. Doku fehlt.
  • evtl. vom zentralistischen IPS Ansatz zurück auf eine lokale Inteligenz zu gehen. Irgendwann werde ich keine Lust mehr auf IPS haben und dann sollt es smooth weiterlaufen.- ggfl. sogar wieder was kommerzielles auf SPS Basis oder so.

gruß
bb

hoffe ein paar

Hallo bb,

es gehört jetzt nicht zum eigendlichen Thema aber ich frage trotzdem einmal. :smiley:

Wie kann man so ein Liveview erstellen, hast Du das schon einmal beschrieben?

Gruß
Thomas

@Stern: Suche nach „Floorplan“. Vor ein paar Jahren hatten wir uns mal eine zeitlang recht ausgiebig über solche Sachen unterhalten.
Dort gings zwar hauptsächlich darum das Haus zu visualisiere, die Technik dahinter ist aber die gleiche.
Eine andere Alternative ist IPSVIEW. Das verwende ich für den Floorplan auf meinen Wandtabletts.

gruß
bb

Alles klar, da werde ich mich mal auf die Suche machen.

IPSStudio hätte ich auch, nur noch nicht richtig damit beschäftigt.

Vielen Dank für den Tipp.

VG
Thomas