Home Automation, zoals het creëren van je eigen controle algoritmes voor systeem eHouse

Building Management eHouse maakt het mogelijk om uw eigen overlay (applicatie die draait op een PC die eHouse systeem server) , die het gemakkelijk maakt om uw eigen individuele programmering algoritmen te creëren met behulp van onze software EhouseLogAnalizer template voor Delphi . Deze software is besproken ” Logs Analyzer slimme woning eHouse ” verlenging van de functionaliteit van het systeem eHouse Home Automation .
Met de stabiliteit van de huidige ; s pc , en Windows kan naadloze en continue werking van het intelligente huis management software eHouse ook gecontroleerd door de toepassing KillExec worden . exe .
In het geval van opschorting van de toepassing fout wordt gesloten en opnieuw gestart, zonder tussenkomst van de gebruiker het systeem .
Met de juiste set-up van Windows en systeem eHouse continuïteit kan werken smart home software op de pc voor vele maanden .
Juiste schrijven van software smart home control systeem vereist sequentiële testen eHouse veranderende meetwaarden (en stuur passende controle gebeurtenissen, indien nodig – tijd) .
Bij het schrijven van uw eigen controle algoritmes om software te maken – vlaggen waaruit blijkt dat de voltooiing van het evenement om zinloos niet herhaaldelijk sturen van dezelfde gebeurtenis: bijvoorbeeld , om de 2 seconden om jaloezieën die al gesloten zijn dicht .
Aanvragen kunnen worden toegewezen aan verschillende Timers:
Eerste – Toonaangevende zoals het bijwerken van de gegevens bestuurder 10 seconden .
Ander – met waarden â € <â € <, afhankelijk van de variabiliteit van het fenomeen:
bv . voor jaloezieën , luifels voor buitentemperatuur en de lichtintensiteit kan een paar minuten .
Bij omvormer jaloezieën , poorten , markies , ramen , enz. . kan worden gebruikt riet aangesloten op de digitale ingangen eHouse slimme woning controllers , bewijs van hun nauwe en maken controle operaties over de stand van de input data RoomManager , die is veel beter en waarachtiger dan vlag Sofware , waarvan de waarde kan verkeerd worden ingesteld als gevolg van fouten in de software of fouten te wijten aan het station (niet de sluiting van de , mechanisch , blokkeren , enz. . ) .

Voorbeelden op basis van gegevens van controllers in de toepassing eHouseLogAnalizer (in herhalende loops die met intervallen om de paar seconden) .

/ / Initialiseer de gegevens van de controller ketel HeatManagera
TzewnetrznaPN: = HADC [HM_ZEWNPN] ; / / Externe Temperatuur Noord-
TemperaturaGWC: = HADC [HM_GWC] ; / / Temperatuur voor GWC – Bodemwarmtewisselaar voor de recuperator
TemperaturaKominekPlaszcz: = HADC [HM_KOM1] ; / / De temperatuur van het water in de schoorsteen 1 sensor
TemperaturaKominekKonvekcja: = HADC [HM_KOMKONV] ; / / Temperatuur convectie haard – sensor op de schoorsteen van het eigenlijke werk van de open haard
TemperaturaKominekPlaszcz: = HADC [HM_KOM2] ; / / Fire watermantel temperatuur sensor 2 – (Back-up)
TemperaturaWewnÄ ™ trzna: = HADC [HM_TWEWN] ; / / Interne kamertemperatuur – voor CO
TemperaturaSolar: = HADC [HM_SOLAR] ; / / Temperatuur zonnecollector buis piek (warm)
TzewnetrznaPD: = HADC [HM_ZEWNPD] ; / / Buitentemperatuur middag
Tkociol: = HADC [HM_KOC] ; / / Boiler buis temperatuur piek (warm)
TemperaturaBuforaCODol: = HADC [HM_BANDOL] ; / / Temperatuur CO / warm water tank naar beneden
TemperaturaRecuIn: = HADC [HM_REQIN] ; / / Input recuperator temperatuur schone lucht
TemperaturaRecuOut: = HADC [HM_REQOUT] ; / / Output luchttemperatuur recuperator huis
TemperaturaZaworTrojDrozny: = HADC [HM_NAG] ; / / Temperatuur gecontroleerd drie – wegklep zoals een verwarming of radiatoren
TemperaturaRecuWyciog: = HADC [HM_REQWYC] ; / / Extract recuperator temperatuur van het huis vuile lucht
TemperaturaBuforaCOGora: = HADC [HM_BANGORA] ; / / Temperatuur verwarming / warm water tanken
TemperaturaBuforaCOSrodek: = HADC [HM_BANSRO] ; / / Temperatuur verwarming / boiler centrum
/ / De metingen van de sensoren naar RoomManager
TzewWschod: = RMGetTempNr (get_index_rm ( ‘ 55 – 2 ‘ ) , 8) ; / / Outdoor Temperature Sensor oosten van RM No . 8 voor het adres 55 – 2
TzewZachod: = RMGetTempNr (get_index_rm ( ‘ 55 – 3 ‘ ) , 8) ; / / Temperatuur sensor buiten het Westen met No . 8 voor RM met het adres 55 – 3
TzewPolnoc: = RMGetTempNr (get_index_rm ( ‘ 55 – 4 ‘ ) , 8) ; / / Temperatuur sensor buiten Noord-Geen . 8 voor RM met het adres 55 – 4
TzewPoludnie: = RMGetTempNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 8) ; / / Temperatuur sensor buiten Zuid-Geen . 8 voor RM met het adres 55 – 5
LNaslonecznienieWschod: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 2 ‘ ) , 1) ; / / Het niveau van het omgevingslicht ten oosten van de sensor geen . 1 voor RM met het adres 55 – 2
LNaslonecznienieZachod: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 3 ‘ ) , 1) ; / / Ambient lichtsensor West Geen . 1 voor RM met het adres 55 – 3
LNaslonecznieniePolnoc: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 4 ‘ ) , 1) ; / / Ambient lichtsensor North Geen . 1 voor RM met het adres 55 – 4
LNaslonecznieniePoludnie: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 1) ; / / Ambient lichtsensor Zuid-Geen . 1 voor RM met het adres 55 – 5
SilaWiatru: =: = RMGetPercentNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 7) ; / / Ambient lichtsensor Zuid-Geen . 1 voor RM met het adres 55 – 5
Regelalgoritmen kan willekeurig zijn en kan de parameters en metingen tot nu toe zijn gebruikt en geïnstalleerde sensoren bepaalde fysische grootheden .
/ / Algorithm in de langzame herhaling timer dergelijke . elke 10 minuten
/ / Voorbeeld energie – efficiënte controle van rolluiken en zonwering (resulterend in aanzienlijke kostenbesparingen als gevolg van de zon ' ; s stralen naar het huis in de winter te verwarmen) en de accumulatie van gratis zonne-energie
/ / Vrij en ecologische verwarming van kamers aan de oostzijde van het gebouw aan zonlicht
if (niet RoletyWschod) dan / / als ze niet meer open
if (LNaslonecznienieWschod> ; 80) dan / / als de zon – Controleer de waarde van empirisch
if (maand < ; ; 5) en de maand> ; 8) dan / / als de maand van september tot april
if (TzewWschod> ; 0) then / / temperatuursensor in de zon verwarmd boven 0C
if (tijd> ; 8) en (Time < ; ; 11) dan / / in de ochtend wanneer de zon schijnt direct vanuit het oosten
beginnen
RoletyWschod: = true ; / / Vlag om luiken te openen Oosten
OtworzRoletyWschod ; / / Functie van het verzenden van een gebeurtenis in het systeem drivers eHouse
ZamknijMarkizyWschod ; / / Geef niet alles omdat de zon te laag is
einde ;
/ / Vrij en ecologische verwarming van kamers aan de zuidkant van het gebouw , de zon ' ; s stralen
if (niet RoletyPoludnie) dan / / als ze niet meer open
if (LNaslonecznieniePolodnie> ; 80) dan / / als de zon – Controleer de waarde van empirisch
if (maand < ; ; 5) en de maand> ; 8) dan / / als de maand van september tot april
if (TzewPoludnie> ; 0) then / / temperatuursensor in de zon verwarmd boven 0C
if (uren> ; 10) en (Time < ; ; 14) dan / / in de ochtend wanneer de zon schijnt direct vanuit het zuiden
beginnen
RoletyPoludnie: = true ; / / Open de luiken zuidelijke vlag
OtworzRoletyPolodnie ; / / Functie van het verzenden van een gebeurtenis in het systeem drivers eHouse
ZamknijMarkizyPolodnie ; / / Geef niet alles omdat de zon te laag is
einde ;
/ / Vrij en ecologische verwarming van kamers aan de westzijde van het gebouw , de zon ' ; s stralen
if (niet RoletyZachod) dan / / als ze niet meer open
if (LNaslonecznienieZachod> ; 80) dan / / als de zon – Controleer de waarde van empirisch
if (maand < ; ; 5) en de maand> ; 8) dan / / als de maand van september tot april
if (TzewZachod> ; 0) then / / temperatuursensor in de zon verwarmd boven 0C
if (uren> ; 14) en (Time < ; ; 18) dan / / in de ochtend wanneer de zon direct schijnt vanuit het westen
beginnen
RoletyZachod: = true ; / / Vlag te openen luiken West-
OtworzRoletyZachod ; / / Functie van het verzenden van een gebeurtenis in het systeem drivers eHouse
ZamknijMarkizyZachod ; / / Geef niet alles omdat de zon te laag is
einde ;
/ / Ecologische en economische beperking van het effect van de vrije ruimte verwarming door zonlicht in de zomer – controle luifels
/ / Controle voortent – Open zonneschermen aan zonnestraling te verminderen en het verwarmen van het huis in de zomer – oosten
if (niet MarkizaWschodA) dan / / als ze niet meer open
if (SilaWiatru < ; ; 5) dan / / als er geen wind
if ((maand> ; 4) en (maand < ; ; 9)) then / / zomermaanden
if (LNaslonecznienieWschod> ; 50) dan / / als de zon schijnt
if (tijd> ; 6) en (Time < ; ; 12) dan / / als uren van de ochtend
if (TwewnWschodA> ; 25) dan / / als de kamer is te warm
beginnen
MarkizaWschodA: = true ; / / Vlag voortent open ruimte A
OtworzMarkizeWchodA ; / / Stuur een evenement om het systeem drivers eHouse
einde ;
/ / Evenzo , kunt u een kopie van de code voor onafhankelijke controle van luifels in andere gebieden van de oostelijke gevel van het veranderen van A naar een andere waarde
/ / Controle voortent – Open zonneschermen aan zonnestraling te verminderen en het verwarmen van het huis in de zomer middag
if (niet MarkizaPoludnieA) dan / / als ze niet meer open
if (SilaWiatru < ; ; 5) dan / / als er geen wind
if ((maand> ; 4) en (maand < ; ; 9)) then / / zomermaanden
if (LNaslonecznieniePoludnie> ; 50) dan / / als de zon schijnt
if (tijd> ; 8) en (Time < ; ; 18) dan / / als het uur waarop de zon hardste werkt vanuit het zuiden
if (TwewnPoludnieA> ; 25) dan / / als de kamer is te warm
beginnen
MarkizaPoludnieA: = true ; / / Vlag voortent open ruimte A
OtworzMarkizePoludnieA ; / / Stuur een evenement om het systeem drivers eHouse
einde ;
/ / Evenzo , kunt u een kopie van de code voor onafhankelijke controle van luifels in andere gebieden van de Zuid-elevatie A Overstappen naar een andere waarde
/ / Controle voortent – Open zonneschermen aan zonnestraling te verminderen en het verwarmen van het huis in de zomer van westzijde
if (niet MarkizaZachodA) dan / / als ze niet meer open
if (SilaWiatru < ; ; 5) dan / / als er geen wind
if ((maand> ; 4) en (maand < ; ; 9)) then / / zomermaanden
if (LNaslonecznieniePoludnie> ; 50) dan / / als de zon schijnt
if (tijd> ; 8) en (Time < ; ; 18) dan / / als het uur waarop de zon hardste werkt vanuit het zuiden
if (TwewnZachodA> ; 25) dan / / als de kamer is te warm
beginnen
MarkizaZachodA: = true ; / / Vlag voortent open ruimte A
OtworzMarkizeZachodA ; / / Stuur een evenement om het systeem drivers eHouse
einde ;
/ / Evenzo , kunt u een kopie van de code voor onafhankelijke controle van luifels in andere gebieden van de westelijke gevel van het veranderen van A naar een andere waarde
/ / Sluit de markies is te veel wind
if (LNaslonecznieniePoludnie < ; ; 20) dan / / als de zon niet schijnt (gekozen empirisch Na regen en regenval)
if (MarkizaPoludnieA), dan / / als open luifel
beginnen
MarkizaPoludnieA: = false ; / / Verander de vlag
ZamknijMarkizePoludnieA ; / / Stuur gebeurtenissen aan de microprocessor controllers eHouse
einde ;
if (LNaslonecznienieZachod < ; ; 20) dan / / als de zon niet schijnt (empirisch gekozen)
if (MarkizaZachodA), dan / / als open luifel
beginnen
MarkizaZachodA: = false ; / / Verander de vlag
ZamknijMarkizeZachodA ; / / Stuur gebeurtenissen aan de microprocessor controllers eHouse
einde ;
if (LNaslonecznienieWschod < ; ; 20) dan / / als de zon niet schijnt (empirisch gekozen)
if (MarkizaWschodA), dan / / als open luifel
beginnen
MarkizaWschodA: = false ; / / Verander de vlag
ZamknijMarkizeWschodA ; / / Stuur gebeurtenissen aan de microprocessor controllers eHouse
einde ;
if (SilaWiatru> ; 5) dan / / Wind om de blinds te sluiten
if (MarkizaZachodA of MarkizaWschodA of MarkizaPoludnieA), dan / / als er een open is
beginnen
ZamknijWszystkieMarkizy ; / / Stuur een evenement om het systeem drivers eHouse
MarkizaZachodA: = false ;
MarkizaWschodA: = false ;
MarkizaPoludnieA: = false ;
einde ;
/ / Closing luiken automatische controle temperatuur is te laag voor de warmte naar buiten ontsnappen via de beperkende openingen buiten het raam
/ / Zuid- – het sluiten van luiken aan de koude en het gebrek aan zon voor de zuidgevel
if (RoletyPoludnie), dan / / als het open is
if (TzewPoludnie < – 10) then // temperature sensor smaller than the southern – 10C indicating the large cold and lack of sun heating the sensor on the south side

beginnen
RoletyPoludnie: = false ; / / Open de luiken zuidelijke vlag
ZamknijRoletyPolodnie ; / / Functie van het verzenden van een gebeurtenis in het systeem drivers eHouse
/ / ZamknijMarkizyPolodnie ; / / Geef niet alles omdat de zon te laag is
einde ;
/ / Home-Oosten sluiten blinds van koude en gebrek aan zon voor de Oost-gevel
if (RoletyWschod), dan / / als het open is
if (TzewWschod < – 10) then // temperature sensor lower than the Eastern – 10C indicating the large cold and lack of sun heating the sensor on the east side

beginnen
RoletyWschod: = false ; / / Vlag om luiken te openen Oosten
ZamknijRoletyWschod ; / / Functie van het verzenden van een gebeurtenis in het systeem drivers eHouse
/ / ZamknijMarkizyWschod ; / / Geef niet alles omdat de zon te laag is
einde ;
/ / Sluit de blinds westelijke kant van de kou en het gebrek aan zon naar de westgevel
if (RoletyZachod), dan / / als het open is
if (TzewZachod < – 10) then // temperature sensor below the western – 10C indicating the large cold and lack of sun heating the sensor on the west side

beginnen
RoletyZachod: = false ; / / Vlag te openen luiken West-
ZamknijRoletyZachod ; / / Functie van het verzenden van een gebeurtenis in het systeem drivers eHouse
/ / ZamknijMarkizyZachod ; / / Geef niet alles omdat de zon te laag is
einde ;