
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Geändert wurde zur Stromversorgung von externen Relais und externen Ventilen der Reparaturersatz eines defekten 24V-Travos und den gleichzeitigen Einsatz einer 24V-Gleichspannungsquelle. Hängen bleibt die Station offenbar recht regelmäßig aber nicht immer beim Relaisschalten, manchmal geht sie auch einfach aus. Hier das Listing: define Eingang1 AD[1] 'Temperatur des Warmwasserspeicher define Eingang2 AD[2] 'Temperatur des Holzofens GD 8 define P1 port[1] 'Digitaler Eingang an Klemme 28, soll Betrieb des GD8 anzeigen define K1 port[7] 'int.Relais K1,für Warmwasser, siehe: "Warmwasser" define K2 port[8] 'int.Relais K2,für Honeywellventilsteuerung,s. "Heizung" define K3 port[5] 'ext.Relais an Klemme 32, für Pufferladen define K4 port[2] 'ext.Relais für 24V Travo, s. "Heizung" u. "Warmwasser" define F1 port[9] 'Taste F1 define F2 port[10] 'Taste F2 define L1 port[13] 'LED über der Taste F1 define L2 port[14] 'LED über der Taste F2 define L3 port[15] 'LED über der Taste F3 define temp1 byte ' define temp2 byte ' define ww byte 'Hilfswert für Warmwasserbereitungszeit define hzg byte 'Hilfswert damit die Umschaltung WW / HZG eine Totzeit bekommt define puffer byte 'Hilfswert für Pufferladungszeit define min byte ' define sec byte ' define X byte 'X ist der negierte Wert von P1, x = p1 * -1 ; x = 0 oder 1 define merkerx byte 'Variable zur Zwischenspeicherung von X K1 = Off K2 = Off K3 = off K4 = off L1 = off L2 = off L3 = off x = -1 * p1 ' Datei ruecksetzen open# for write close# #mainloop 10 if x = 0 then goto meldung1 else goto 11 'wenn x = 0, dann läuft die Pumpe des GD8 11 if x = 1 then goto meldung2 else goto loop 'wenn x = 1, dann steht die Pumpe des GD8 #loop if not F1 then goto heizung if not F2 then goto warmwasser merkerx = x temp1 = Eingang1 temp2 = Eingang2 sec = second if sec = 2 then min = min + 1 'Minutenzähler wird um 1 erhöht wait sec <> second 'Warten bis diese Sekunde vorbei ist if sec = 3 then beep 400, 10, 3 'Kontrollpieps if min = 4 and sec = 12 then print "Temperaturen", day;".";month;"." ,hour;":";minute, temp1, temp2 wait sec <> second 'warten, sonst Mehrfachausgabe if min >= 4 and sec = 55 then min = 0 'Zurücksetzen des Minutenzählers if hzg >= 99 then hzg = 0 'Rücksetzen des HeizungsMinutenzählers if K1 = Off and sec = 7 then hzg = hzg +1 'Wenn Heizung des Holzofens in Betrieb, 'wird in der 7. Sekunde der HeizungsMinutenzähler um 1 erhöht if K1 = On and sec = 6 then ww = ww +1 'Wenn Warmwasser gemacht wird, 'wird in der 6. Sekunde der WarmwasserMinutenzähler um 1 erhöht if K3 = On and sec = 8 then puffer = puffer +1 'Wenn in den Puffer geheizt wird, 'wird in der 6. Sekunde der PufferMinutenzähler um 1 erhöht if K1 = Off and hzg >= 4 and temp2 > 62 and temp1 < 52 then gosub warmwasser 'Wenn "Heizung" und der Heizungsminutenzähler größer 4 'wird bei einer Temperatur größer 62°C zu "Warmwasser" geschaltet, 'wenn die Warmwassertemperatur kleiner 52°C ist if K1 = Off and hzg >= 4 and temp2 > 70 and temp1 < 57 then gosub warmwasser 'Wenn "Heizung" und der Heizungsminutenzähler größer 4 'wird bei einer Temperatur größer 70°C zu "Warmwasser" geschaltet, 'wenn die Warmwassertemperatur kleiner 57°C ist if temp2 > 78 and k3 = off then gosub pufferladen 'Ist die Temperatur größer 78°C wird in den Puffer geheizt if ww >= 4 then gosub heizung 'Wenn der Warmwasserminutenzähler 4 ist, wird wieder geheizt if puffer >= 3 then gosub nichtpuffer 'Wenn der Pufferminutenzähler 3 ist, wird der Puffer abgeschaltet x = -1 * p1 'Der Zustand "ist der Ofen an oder aus" wird abgefragt und gespeichert if x <> merkerx then goto mainloop else goto loop 'Wenn x ungleich merkerx ist, der Zustand des Ofens (an/aus) sich geändert 'hat, dann weiter zu mainloop, wenn nicht zu loop #Meldung1 print "GD8 ist in Betrieb" day;".";month;"." ,hour;":";minute, temp1, temp2 hzg = 0 goto heizung #Meldung2 print "GD 8 ist nicht in Betrieb" day;".";month;"." ,hour;":";minute, temp1, temp2 hzg = 0 L1 = off goto loop #Heizung K4 = on '24V-Travo wird eingeschaltet L2 = off 'Die LED über der Taste F2, die noch vom Warmwasser leuchtet, geht aus L1 = on 'Die LED über der Taste F1 geht an K1 = on 'K1 ist EIN, Finder-Relais ist EIN, 'am Honeywell-Venil liegt 24V Spannung an K2 = on 'jetzt habt die dritte Klemme des Ventils Strom - wenn K4 on ist - 'und das Ventil geht zurück in Heizbetrieb pause 450 'Zeit, die das Ventil zum umschalten braucht!! K1 = off 'K1 = Off, Finder-Relais ist AUS, Honeywell-Ventil mit Gastherme verbunden, 'die z.Zt. ohne Spannung ist. K2 = off 'K2 = Off hzg = 0 'Rücksetzten des HeizungsMinutenwertes ww = 0 'Rücksetzten des WarmwasserMinutenwertes Print "Heizung ", day;".";month;"." ,hour;":";minute, temp1, temp2 K4 = off '24V-Travo wird ausgeschaltet goto loop #warmwasser K4 = on '24V-Travo wird eingeschaltet L1 = off L2 = on K1 = on 'finder-Relais trennt Gastherme vom Honeywell-Ventil, 'da eine Klemme des Relais ohne Strom, schaltet das 'Ventil auf Warmwasser print "Warmwasser", day;".";month;"." ,hour;":";minute, temp1, temp2 pause 450 'Zeit die das Ventil zum umschalten braucht K4 = off '24V-Wechselstromtrafo ist AUS ww = 0 'K1 bleibt an, da über K1 = on der WarmwasserMinutenzähler erhöht wird goto loop #pufferladen L3 = on K3 = on 'elektrisches Ventil zum Puffer geht auf print "Pufferladen EIN", day;".";month;"." ,hour;";";minute, temp1, temp2 print "---------------" goto loop #nichtpuffer L3 = off K3 = off 'elektrisches Ventil zum Puffer geht zu puffer = 0 print "Pufferladen AUS", day;".";month;"." ,hour;";";minute, temp1, temp2 print "---------------" goto loop 'Ende ' |
| Antwort schreiben |