Heizungssteuerung Beispiel Programm Code
** Heizungsteuerung  Version  GS04   (c) Georg Steidle Brigachtal ** ** Makro Hz1_RrWohn,  startet bei jedem Datenempfang vom Funkemregler FHT80b RrWohn, ** Das Programm prüft, ob Fenster offen, dann Anforderung = 5 Brenner aus ** Dann, ob Soll Tp und IST Tp größer als 2 Grad, dann Brenner 15 Volt = Höchst Leistung ** Das Ventil muss aber mindestes auf 4% geöffnet sein. ** Dann, ob Soll Tp und IST Tp  größer als 1 Grad, dann Brenner 13 Volt ** Das Ventil muss aber auch hier mindestes auf 4% geöffnet sein. ** Dann Prüfung auf kleineres Delta ** wenn RrWohn.Fenster GESCHLOSSEN dann   V_RrWohn_Offset:=RrWohn - Hz1OffSet.Hz1OffSet1    ** 20,5 - 0,3 = 20,2 der Brenner schaltet 0,3 Grad vorher aus.    ** Die Ventille sind weiter offen; es pfeift nicht.    wenn  RrWohn.Temperatur < V_RrWohn_offset        dann          wenn RrWohn.Ventilpos <= 3 dann                          ** 5, keine Wärmeanforderung, Ventil ist fast zu                          V_RrWohn_TpAnf:=5          endewenn          wenn RrWohn.Ventilpos >= 5 und RrWohn.Ventilpos <= 18 dann                         ** Ventil hat 5% bis 18% geöffnet, geringe Brenner Leistung                         V_RrWohn_ TpAnf:=8          endewenn          wenn RrWohn.Ventilpos >= 19 und RrWohn.Ventilpos <= 25 dann                         V_RrWohn_TpAnf:=9          endewenn          wenn RrWohn.Ventilpos >= 26 und RrWohn.Ventilpos <= 32 dann                        V_RrWohn_TpAnf:=10          endewenn          wenn RrWohn.Ventilpos >= 33 und RrWohn.Ventilpos <= 40 dann                        V_RrWohn_TpAnf:=11          endewenn          wenn RrWohn.Ventilpos >= 41 und RrWohn.Ventilpos <= 55 dann                        V_RrWohn_TpAnf:=13          endewenn          wenn RrWohn.Ventilpos >= 56 und RrWohn.Ventilpos <= 75 dann                        V_RrWohn_TpAnf:=15          endewenn          wenn RrWohn.Ventilpos >= 76 dann                       V_RrWohn_TpAnf:=15          endewenn       sonst         V_RrWohn_TpAnf:=5         ** Raumtemperatur hat SollTemp erreicht oder ist größer     endewenn sonst   V_RrWohn_TpAnf:=5   ** Fenster ist offen, keine Anforderung an den Brenner. Brenner aus. endewenn ** endeRrWohn: ** Egal was los ist, wenn Zimmertemperratur unter 4 Grad ** dann Brenneranforderung 8 Volt.  Frostschutz. wenn RrWohn.Temperatur < 4 dann   V_RrWohn_TpAnf:=8   ** Frostgefahr Heizkörper endewenn ** ** bei Vorlauf Tp über Hz1VorTpmax.Hz1VorTpMax1 40 bis 60 Grad max. 8 Volt Brennerleistung  Änderung vom 17.12.2009 wenn V_RrWohn_TpAnf > 8 dann   wenn Hz1VorlTp >= Hz1VorTpmax.Hz1VorTpMax1 dann        V_RrWohn_TpAnf:= 8   endewenn endewenn ** Dokumentation der Daten in Dateien. Nur schreiben, wenn es veränderungen gibt ** RrWohnLog1:=Hz1Prog+RrWohn+RrWohn.Temperatur+RrWohn.Ventilpos+RrWohn.V_RrWohn_TpAnf Wenn RrWohnlog1 <> RrWohnlog2 dann  RrWohnlog2:=RrWohnlog1    RrHz1WoKpLog0:=uhr+" ; "+H100TFT1+" ;   "+Hz1Prog+Hz1VorlTp+" ;  "+Hz1Prog+" ;   "                    +RrWohn+RrWohn.Temperatur+" ;   "+RrWohn.Ventilpos+" ;  "+RrWohn.V_RrWohn_TpAnf+" ;     "                    +RrJulia+RrJulia.Temperatur+" ;   "+RrJulia.Ventilpos+" ;   "+RrJulia.V_RrJulia_TpAnf+" ;    "                    +RrKatrin+RrKatrin.Temperatur+" ;   "+RrKatrin.Ventilpos+" ;   "+RrKatrin.V_RrKatrin_TpAnf **    RrHz1WohnLog0:=uhr+" ; "+H100TFT1+" ;  "+Hz1Prog+Hz1VorlTp+" ;  "+Hz1Prog+" ;  "                    +RrWohn+RrWohn.Temperatur+" ; "+RrWohn.Ventilpos+" ; "+RrWohn.V_RrWohn_TpAnf **   Wenn Jahr = 2014 dann     schreibedatei("C:\fhz1350\dat\Hz1Rr_Hz1_Kpl_2014.txt","%<Uhr>; %<Frist.WTagK>; %<AussenTemp>; %<Hz1Prog> ;        %<Hz1VorlTp>; %<RrWohn>; %<RrWohn.Temperatur>; %<RrWohn.Ventilpos>; %<RrWohn.V_RrWohn_TpAnf>;         %<RrJulia>; %<RrJulia.Temperatur>; %<RrJulia.Ventilpos>; %<RrJulia.V_RrJulia_TpAnf>;          %<RrKatrin>; %<RrKatrin.Temperatur>; %<RrKatrin.Ventilpos>;  %<RrKatrin.V_RrKatrin_TpAnf>")   endewenn   wenn Monat = 12 dann    schreibedatei("C:\fhz1350\dat\Hz1Trig_RrWohn_dez.txt","%<Uhr>; %<Frist.WTagK>; %<AussenTemp>; %<Hz1Prog> ;            %<Hz1VorlTp>;  %<RrWohn>; %<RrWohn.Temperatur>; %<RrWohn.Ventilpos>; %<RrWohn.V_RrWohn_TpAnf>;              %<RrJulia>; %<RrJulia.Temperatur>; %<RrJulia.Ventilpos>; %<RrJulia.V_RrJulia_TpAnf>;              %<RrKatrin>; %<RrKatrin.Temperatur>; %<RrKatrin.Ventilpos>;  %<RrKatrin.V_RrKatrin_TpAnf>")    schreibedatei("C:\fhz1350\dat\Hz1RrWohn_dez.txt","%<Uhr>; %<Frist.WTagK>; %<AussenTemp>; %<Hz1Prog>;            %<Hz1VorlTp>;  %<RrWohn>; %<RrWohn.Temperatur>; %<RrWohn.Ventilpos>;   %<RrWohn.V_RrWohn_TpAnf>")   endewenn  ** Jetzt wird für 5 Raumregler geschrieben    schreibedatei("C:\fhz1350\dat\Hz1Trig_RrWo_RrJul_RrKat_RrBad_RrWC.txt","%<Uhr>; %<Frist.WTagK>;             %<AussenTemp>; %<Hz1Prog> ; %<Hz1VorlTp>;              %<RrWohn>; %<RrWohn.Temperatur>; %<RrWohn.Ventilpos>; %<RrWohn.V_RrWohn_TpAnf>;               %<RrJulia>; %<RrJulia.Temperatur>; %<RrJulia.Ventilpos>; %<RrJulia.V_RrJulia_TpAnf>;               %<RrKatrin>; %<RrKatrin.Temperatur>; %<RrKatrin.Ventilpos>;  %<RrKatrin.V_RrKatrin_TpAnf>;                %<RrBadDG>; %<RrBadDG.Temperatur>; %<RrBadDG.Ventilpos>; %<RrBadDG.V_RrBadDG_TpAnf>;               %<RrWCEG>; %<RrWCEG.Temperatur>; %<RrWCEG.Ventilpos>; %<RrWCEG.V_RrWCEg_TpAnf>") endewenn
Programm Beispiel Makro  “Raum Thermostat Wohnzimmer” Programmiert wird mit Homputer Studio der Firma CONTRONICS. Die Software “Homputer Studio” mit Unterstützung Velleman 8055 ist nicht mehr lieferbar. Die Programmiersprache ist ähnlich wie BASIC. Ein eingedeutschtes BASIC.   -;) Beispiel Programm  Makro  Raum-Thermostat Wohnzimmer. Die Heizungssteuerung enthält inzwischen über 40 Makros. Das nachfolgende Programm ist an manchen stellen gekürzt. Soll nur zeigen, wie die Sprache von CONTRONICS aufgebaut ist.   ** ist Kommentarzeile