Automatització de la llar com ara la creació dels seus propis algorismes de control per sistema eHouse

Gestió d'Edificis eHouse li permet crear la seva pròpia plantilla (aplicació que s'executa en un PC que servidor del sistema eHouse) , el que fa que sigui fàcil crear els seus propis algoritmes de programació individuals utilitzant la nostra plantilla EhouseLogAnalizer programari per Delphi . Aquest programari ha estat discutit en ” Registres Analitzador intel · ligent de la llar eHouse ” una extensió de la funcionalitat del sistema eHouse Domòtica .
Amb l'estabilitat d'avui ; s de PC , i Windows pot ser un funcionament perfecte i continu de la eHouse casa intel · ligent programari de gestió també es controla mitjançant l'aplicació KillExec . exe .
En el cas de suspensió de l'aplicació error es tanca i s'inicia de nou sense la intervenció de l'usuari del sistema .
Amb la deguda posada a punt de Windows i la continuïtat del sistema eHouse programari pot treballar a casa intel · ligent al PC durant molts mesos .
Programari adequat escriptura intel · ligent d'inici del sistema de control requereix mesuraments seqüencials eHouse proves canviants (i enviar esdeveniments de control apropiades si és necessari – temps) .
En escriure els seus propis algorismes de control per crear programari – banderes que acrediten la finalització de l'esdeveniment no sense sentit repetidament enviar el mateix esdeveniment: per exemple , cada 2 segons per tancar les persianes que ja estan tancats .
Les aplicacions poden ser assignats a diversos temporitzadors:
Primer – Liderant com ara l'actualització del controlador de dades 10 segons .
Un altre – amb valors â € <â € <en funció de la variabilitat del fenomen:
per exemple, . per al control de persianes , tendals per temperatura exterior i de nivells de llum poden ser d'uns minuts .
En el cas de les persianes de control de transmissió , portes , marquès , finestres , etc . es pot utilitzar canya connectat a les entrades digitals eHouse controladors de casa intel · ligent , evidència del seu tancament i fer que les operacions de control sobre l'estat de l'entrada de dades RoomManager , que és molt millor i més veritable que la bandera Software , el valor es pot establir incorrectament com a resultat d'errors de programari o errors deguts a la unitat de disc (no el tancament de la , mecànic , bloquejar , etc . ) .

Exemples usant dades de controladors a l'eHouseLogAnalizer aplicació (en bucles repetitius que operen a intervals cada pocs segons) .

/ / Inicialitzar les dades de la caldera controlador HeatManagera
TzewnetrznaPN: = CDAV [HM_ZEWNPN] ; / / Temperatura externa del Nord
TemperaturaGWC: = CDAV [HM_GWC] ; / / Temperatura per GWC – Ground intercanviador de calor per al recuperador
TemperaturaKominekPlaszcz: = CDAV [HM_KOM1] ; / / La temperatura de l'aigua a la llar de foc 1 sensor
TemperaturaKominekKonvekcja: = CDAV [HM_KOMKONV] ; / Convecció / Temperatura xemeneia – sensor a la xemeneia de la tasca actual de la xemeneia
TemperaturaKominekPlaszcz: = CDAV [HM_KOM2] ; / / Aigua contra incendis jaqueta temperatura del sensor 2 – (Còpia de seguretat)
TemperaturaWewnÄ ™ trzna: = CDAV [HM_TWEWN] ; / / Temperatura ambient interna – per CO
TemperaturaSolar: = CDAV [HM_SOLAR] ; / / Temperatura col · lector solar del tub de bec (calent)
TzewnetrznaPD: = CDAV [HM_ZEWNPD] ; Temperatura / / Fora del migdia
Tkociol: = CDAV [HM_KOC] ; / Tub / caldera pic de temperatura (calent)
TemperaturaBuforaCODol: = CDAV [HM_BANDOL] ; / / Temperatura CO / dipòsit d'aigua calenta cap avall
TemperaturaRecuIn: = CDAV [HM_REQIN] ; / / Entrada recuperador temperatura de l'aire net
TemperaturaRecuOut: = CDAV [HM_REQOUT] ; / / Sortida de temperatura de l'aire recuperador casa
TemperaturaZaworTrojDrozny: = CDAV [HM_NAG] ; / / Temperatura controlada 03:00 – vàlvula unidireccional com ara un escalfador o per radiadors
TemperaturaRecuWyciog: = CDAV [HM_REQWYC] ; / / Extracte recuperador temperatura de l'aire de casa bruta
TemperaturaBuforaCOGora: = CDAV [HM_BANGORA] ; / / Temperatura de calefacció / tanc d'aigua calenta fins
TemperaturaBuforaCOSrodek: = CDAV [HM_BANSRO] ; / / Temperatura de calefacció / aigua calenta tanc central
/ / Els mesuraments dels sensors a RoomManager
TzewWschod: = RMGetTempNr (get_index_rm ( ‘ 55 – 2 ‘ ) , 8) ; / / Sensor de temperatura exterior a l'est de RM No . 8 per a la direcció de 55 – 2
TzewZachod: = RMGetTempNr (get_index_rm ( ‘ 55 – 3 ‘ ) , 8) ; / / Sensor de temperatura fora d'Occident, sense la . 8 per RM amb la direcció 55 – 3
TzewPolnoc: = RMGetTempNr (get_index_rm ( ‘ 55 – 4 ‘ ) , 8) ; / / Sensor de temperatura exterior North No . 8 per RM amb la direcció 55 – 4
TzewPoludnie: = RMGetTempNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 8) ; / / Sensor de temperatura exterior South No . 8 per RM amb la direcció 55 – 5
LNaslonecznienieWschod: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 2 ‘ ) , 1) ; / / El nivell de llum ambiental d'aquest sensor no . 1 per RM amb la direcció 55 – 2
LNaslonecznienieZachod: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 3 ‘ ) , 1) ; / / Sensor de llum ambiental Nivell de West No . 1 per RM amb la direcció 55 – 3
LNaslonecznieniePolnoc: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 4 ‘ ) , 1) ; / / Sensor de llum ambiental Nivell de North No . 1 per RM amb la direcció 55 – 4
LNaslonecznieniePoludnie: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 1) ; / / Sensor de llum ambiental Nivell Sud No . 1 per RM amb la direcció 55 – 5
SilaWiatru: =: = RMGetPercentNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 7) ; / / Sensor de llum ambiental Nivell Sud No . 1 per RM amb la direcció 55 – 5
Algorismes de control pot ser arbitrària i pot incloure qualsevol dels paràmetres i mesures fins ara s'han fet servir i instal · lat sensors de certes quantitats físiques .
/ / Algorisme continguda en el temporitzador tal repetició lenta . cada 10 minuts
/ / Exemple de l'energia – eficient control de persianes i tendals (el que resulta en estalvis de costos significatius a causa del sol ' ; s de raigs per escalfar la casa a l'hivern) i l'acumulació d'energia solar lliure
/ / Calefacció gratis i ecològic de les habitacions al costat est de l'edifici a la llum solar
if (no RoletyWschod) then / / si ja no estan oberts
if (LNaslonecznienieWschod> ; 80) then / / si el sol – comprovar empíricament el valor de
if (mes < ; ; 5) i mes> ; 8) then / / si el mes de setembre a abril
if (TzewWschod> ; 0) llavors / / sensor de temperatura al sol va escalfar superior a 0 º C.
if (hora> ; 8) i (Time < ; ; 11) then / / en el matí quan el sol brilla directament des de l'est
començar
RoletyWschod: = true ; / / Bandera per obrir persianes Orient
OtworzRoletyWschod ; / / Funció d'enviar un succés en el sistema eHouse conductors
ZamknijMarkizyWschod ; / / No donar res perquè el sol és massa baix
final ;
/ / Calefacció gratis i ecològic de les habitacions al costat sud de l'edifici , el sol ' ; s raigs
if (no RoletyPoludnie) then / / si ja no estan oberts
if (LNaslonecznieniePolodnie> ; 80) then / / si el sol – comprovar empíricament el valor de
if (mes < ; ; 5) i mes> ; 8) then / / si el mes de setembre a abril
if (TzewPoludnie> ; 0) llavors / / sensor de temperatura al sol va escalfar superior a 0 º C.
if (hora> ; 10) i (Time < ; ; 14) then / / en el matí quan el sol brilla directament des del sud
començar
RoletyPoludnie: = true ; / / Obrir la bandera persianes sud
OtworzRoletyPolodnie ; / / Funció d'enviar un succés en el sistema eHouse conductors
ZamknijMarkizyPolodnie ; / / No donar res perquè el sol és massa baix
final ;
/ / Calefacció gratis i ecològic de les habitacions al costat oest de l'edifici , el sol ' ; s raigs
if (no RoletyZachod) then / / si ja no estan oberts
if (LNaslonecznienieZachod> ; 80) then / / si el sol – comprovar empíricament el valor de
if (mes < ; ; 5) i mes> ; 8) then / / si el mes de setembre a abril
if (TzewZachod> ; 0) llavors / / sensor de temperatura al sol va escalfar superior a 0 º C.
if (hora> ; 14) i (Time < ; ; 18) then / / en el matí quan el sol brilla directament des de l'oest
començar
RoletyZachod: = true ; / / Bandera per obrir els obturadors occidental
OtworzRoletyZachod ; / / Funció d'enviar un succés en el sistema eHouse conductors
ZamknijMarkizyZachod ; / / No donar res perquè el sol és massa baix
final ;
/ / Ecològica i Econòmica Limitar l'impacte de l'escalfament de l'espai lliure per la llum solar a l'estiu – tendals de control
/ / Control de tendals – obrir tendals per reduir la radiació solar i escalfar la casa a l'estiu – aquest
if (no MarkizaWschodA) then / / si ja no estan oberts
if (SilaWiatru < ; ; 5) llavors / / si no hi ha vent
if ((Mes> ; 4) i (Mes < ; ; 9)) then / / mesos d'estiu
if (LNaslonecznienieWschod> ; 50) then / / si el sol brilla
if (hora> ; 6) i (Time < ; ; 12) then / / si les hores del matí
if (TwewnWschodA> ; 25) llavors / / si l'habitació està massa calenta
començar
MarkizaWschodA: = true ; / / Bandera tendal habitació oberta A
OtworzMarkizeWchodA ; / / Envia un esdeveniment al sistema eHouse conductors
final ;
/ / Igual , pot replicar el codi per al control independent de tendals en altres àrees de la façana oriental del canvi A a un valor diferent
/ / Control de tendals – obrir tendals per reduir la radiació solar i escalfar la casa al migdia d'estiu
if (no MarkizaPoludnieA) then / / si ja no estan oberts
if (SilaWiatru < ; ; 5) llavors / / si no hi ha vent
if ((Mes> ; 4) i (Mes < ; ; 9)) then / / mesos d'estiu
if (LNaslonecznieniePoludnie> ; 50) then / / si el sol brilla
if (hora> ; 8) i (Time < ; ; 18) llavors / / si l'hora en què el sol opera més difícil des del sud
if (TwewnPoludnieA> ; 25) llavors / / si l'habitació està massa calenta
començar
MarkizaPoludnieA: = true ; / / Bandera tendal habitació oberta A
OtworzMarkizePoludnieA ; / / Envia un esdeveniment al sistema eHouse conductors
final ;
/ / Igual , pot replicar el codi per al control independent de tendals en altres àrees de l'elevació del Sud un canvi a un valor diferent
/ / Control de tendals – tendals oberts per reduir la radiació solar i escalfar la casa a l'estiu del costat oest
if (no MarkizaZachodA) then / / si ja no estan oberts
if (SilaWiatru < ; ; 5) llavors / / si no hi ha vent
if ((Mes> ; 4) i (Mes < ; ; 9)) then / / mesos d'estiu
if (LNaslonecznieniePoludnie> ; 50) then / / si el sol brilla
if (hora> ; 8) i (Time < ; ; 18) llavors / / si l'hora en què el sol opera més difícil des del sud
if (TwewnZachodA> ; 25) llavors / / si l'habitació està massa calenta
començar
MarkizaZachodA: = true ; / / Bandera tendal habitació oberta A
OtworzMarkizeZachodA ; / / Envia un esdeveniment al sistema eHouse conductors
final ;
/ / Igual , pot replicar el codi per al control independent de tendals en altres àrees de la façana occidental de canvi A a un valor diferent
/ / Tancar el Marquès massa vent
if (LNaslonecznieniePoludnie < ; ; 20) then / / si el sol no brilla (elegit empíricament La pluja i la pluja)
if (MarkizaPoludnieA) llavors / / si el tendal obert
començar
MarkizaPoludnieA: = false ; / / Canviar la bandera
ZamknijMarkizePoludnieA ; / / Enviar esdeveniments a la eHouse microprocessador controladors
final ;
if (LNaslonecznienieZachod < ; ; 20) then / / si el sol no brilla (elegit empíricament)
if (MarkizaZachodA) llavors / / si el tendal obert
començar
MarkizaZachodA: = false ; / / Canviar la bandera
ZamknijMarkizeZachodA ; / / Enviar esdeveniments a la eHouse microprocessador controladors
final ;
if (LNaslonecznienieWschod < ; ; 20) then / / si el sol no brilla (elegit empíricament)
if (MarkizaWschodA) llavors / / si el tendal obert
començar
MarkizaWschodA: = false ; / / Canviar la bandera
ZamknijMarkizeWschodA ; / / Enviar esdeveniments a la eHouse microprocessador controladors
final ;
if (SilaWiatru> ; 5) llavors / / Vent a tancar les persianes
if (MarkizaZachodA o MarkizaWschodA o MarkizaPoludnieA) llavors / / si un està obert
començar
ZamknijWszystkieMarkizy ; / / Envia un esdeveniment al sistema eHouse conductors
MarkizaZachodA: = false ;
MarkizaWschodA: = false ;
MarkizaPoludnieA: = false ;
final ;
/ / Persianes de tancament automàtic de control de temperatura és massa baixa perquè la calor s'escapi exterior a través de les obertures restrictives fora de la finestra
/ / Sud – el tancament de persianes al fred i la falta de sol per l'elevació sud
if (RoletyPoludnie) then / / si està obert
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

començar
RoletyPoludnie: = false ; / / Obrir la bandera persianes sud
ZamknijRoletyPolodnie ; / / Funció d'enviar un succés en el sistema eHouse conductors
/ / ZamknijMarkizyPolodnie ; / / No donar res perquè el sol és massa baix
final ;
/ / Inici de l'Est persianes de tancament en fred i la manca de sol de la façana oriental
if (RoletyWschod) then / / si està obert
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

començar
RoletyWschod: = false ; / / Bandera per obrir persianes Orient
ZamknijRoletyWschod ; / / Funció d'enviar un succés en el sistema eHouse conductors
/ / ZamknijMarkizyWschod ; / / No donar res perquè el sol és massa baix
final ;
/ / Tancar el costat oest de les persianes del fred i la falta de sol a l'elevació oest
if (RoletyZachod) then / / si està obert
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

començar
RoletyZachod: = false ; / / Bandera per obrir els obturadors occidental
ZamknijRoletyZachod ; / / Funció d'enviar un succés en el sistema eHouse conductors
/ / ZamknijMarkizyZachod ; / / No donar res perquè el sol és massa baix
final ;