Hallo,
habe mal eben einen PI Regler für eine Fussbodenheizung gecodet. Diese ist im vorliegenden Fall eine reine Zusatzheizung und soll daher nur ab 12 Uhr bis 22 Uhr heizen und auch nur, wenn es unter 21° Grad um 12 hat.
habe mal eben einen PI Regler für eine Fussbodenheizung gecodet. Diese ist im vorliegenden Fall eine reine Zusatzheizung und soll daher nur ab 12 Uhr bis 22 Uhr heizen und auch nur, wenn es unter 21° Grad um 12 hat.
Code:
// ---------------------------------------------------------------------
//
// Wiga- Fussbodenheizung
// PI Regler mit 200 min Integrationszeit und k=30*Delta(Temperatur)
// ---------------------------------------------------------------------
WigaFussboden=AUS
WigaKRegler=22.5-Wohnzimmertemperatur
WigaIRegler=0.0
WigaFreigabeRegler=EIN
if WigaFreigabeRegler then WigaIRegler=0.0 endif
// 200 Min=> 100% Abweichung bei einem Grad Temp. Differenz
if cycle(2,0) then WigaIRegler=WigaIRegler+22.5-Wohnzimmertemperatur endif
// Der Regler
WigaAusgang=WigaKRegler*30.0+WigaIRegler
// In Prozentwert umbauen
WigaAktor=0
if WigaAusgang>=0.0 then WigaAktor=min(100%,convert(WigaAusgang,0)) else WigaAktor=0 endif
// Und etwas Schaltuhren und Logiken:
//
// Wenn es mittag schon 21° hat, kann soll Fussbodenheizung an diesem Tag ausbleiben
// 12 Uhr mittag => die Fussbodenheizung soll angehen
// 22 Uhr => die Fussbodenheizung soll ausgehen
//
if Wohnzimmertemperatur<21.0 and AussenTemperatur<12f16 and htime(12,00,00) and WigaFreigabeRegler then \\
WigaFussboden=EIN;write("Wiga-3/1/13",WigaAktor) endif
if WigaFussboden and change(WigaAktor) then write("Wiga-3/1/13",WigaAktor) endif
if htime(22,00,00) then WigaFussboden=AUS;write("Wiga-3/1/13",0%) endif


Kommentar