Domótica, tales como a creación dos seus propios algoritmos de control para sistema eHouse

Xestión de Edificios Ehouse permite que cree a súa propia superposición (aplicación rodando en un PC que servidor do sistema Ehouse) , que fai máis doado para crear os seus propios algoritmos de programación individuais, empregando o noso modelo de EhouseLogAnalizer software para Delphi . Este software foi discutida en ” Rexistros Analyzer casa intelixente eHouse ” unha extensión da funcionalidade do sistema eHouse Domótica .
Coa estabilidade de hoxe ; PCs s , e Windows pode ser a operación perfecta e permanente do software intelixente eHouse casa xestión tamén monitor pola aplicación KillExec . exe .
No caso de suspensión do erro de aplicación é pechada e comezou unha vez sen a intervención do usuario do sistema .
Co axuste correcto do Windows e continuidade eHouse sistema pode traballar de casa intelixente software no PC por moitos meses .
Apropiada escritura software sistema de control intelixente na casa esixe medidas de ensaio secuencial eHouse cambio (e enviar eventos de control adecuadas, se é necesario – tempo) .
Ao escribir os seus propios algoritmos de control para crear software – bandeiras que atestem a conclusión de que o evento non senselessly enviar varias veces o mesmo evento, por exemplo: , cada 2 segundos para pechar as cortinas que xa están pechadas .
As aplicacións poden ser asignados a varios temporizadores:
Primeiro – Levando, como a actualización do controlador de datos 10 segundo .
Outro – con valores â € <â € <dependendo da variabilidade do fenómeno:
por exemplo . para control de persianas , toldos de temperatura exterior e os niveis de luz pode ser de uns minutos .
No caso de estores de control do conversor , portas , marqués , Windows , etc . pode ser usado Reed conectado ás entradas dixitais eHouse controladores de casa intelixente , probas da súa estreita e facer as tarefas de control sobre o estado da entrada de datos RoomManager , que é moito mellor e máis certo do que bandeira sofware , cuxo valor pode ser configurado incorrectamente como resultado de erros de software ou erros debido á unidade (non o peche do , mecánico , bloquear , etc . ) .

Exemplos utilizando datos de controladores no eHouseLogAnalizer aplicación (en loops repetitivos que operan en intervalos cada poucos segundos) .

/ / Inicializar os datos a partir do controlador de caldeira HeatManagera
TzewnetrznaPN: = HADC [HM_ZEWNPN] ; / / Externo Temperatura do Norte
TemperaturaGWC: = HADC [HM_GWC] ; / / Temperatura para GWC – Intercambiador de calor para o terreo Recuperador
TemperaturaKominekPlaszcz: = HADC [HM_KOM1] ; / / A temperatura da auga o sensor unha cheminea
TemperaturaKominekKonvekcja: = HADC [HM_KOMKONV] ; / Lareira convección / Temperatura – sensor na cheminea do traballo real da lareira
TemperaturaKominekPlaszcz: = HADC [HM_KOM2] ; / / Lume de auga sensor de temperatura chaqueta 2 – (Backup)
TemperaturaWewnÄ ™ trzna: = HADC [HM_TWEWN] ; / / Temperatura ambiente interna – para o CO
TemperaturaSolar: = HADC [HM_SOLAR] ; / Temperatura / colector solar tubo de pico (quente)
TzewnetrznaPD: = HADC [HM_ZEWNPD] ; Mediodía, a temperatura / / Fóra
Tkociol: = HADC [HM_KOC] ; / Pico de temperatura / Caldeira tubo (quente)
TemperaturaBuforaCODol: = HADC [HM_BANDOL] ; / Temperatura / CO / tanque de auga quente para abaixo
TemperaturaRecuIn: = HADC [HM_REQIN] ; / / Entrada temperatura Recuperador de aire limpo
TemperaturaRecuOut: = HADC [HM_REQOUT] ; / / Output temperatura do aire Recuperador casa
TemperaturaZaworTrojDrozny: = HADC [HM_NAG] ; / / Temperatura controlada tres – chave de forma, como un aquecedor ou radiadores
TemperaturaRecuWyciog: = HADC [HM_REQWYC] ; / / Extracto de temperatura Recuperador de aire sucio casa
TemperaturaBuforaCOGora: = HADC [HM_BANGORA] ; / Temperatura / calefacción / tanque de auga quente ata
TemperaturaBuforaCOSrodek: = HADC [HM_BANSRO] ; / Temperatura / calefacción / Centro de tanque de auga quente
/ / Medidas de sensores para RoomManager
TzewWschod: = RMGetTempNr (get_index_rm ( ‘ 55 – 2 ‘ ) , 8) ; / / Este sensor externo de temperatura de RM Non . 8 ao enderezo 55 – 2
TzewZachod: = RMGetTempNr (get_index_rm ( ‘ 55 – 3 ‘ ) , 8) ; / Sensores / Temperatura fóra do Occidente co Con . 8 de RM co enderezo 55 – 3
TzewPolnoc: = RMGetTempNr (get_index_rm ( ‘ 55 – 4 ‘ ) , 8) ; / Sensores / Temperatura fóra North Ningunha . 8 de RM co enderezo 55 – 4
TzewPoludnie: = RMGetTempNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 8) ; / Sensores / Temperatura fóra do Sur Non . 8 de RM co enderezo 55 – 5
LNaslonecznienieWschod: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 2 ‘ ) , 1) ; / / O nivel de luz ambiente leste de sensor Non . 1 a RM co enderezo 55 – 2
LNaslonecznienieZachod: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 3 ‘ ) , 1) ; / / Sensores de luz ambiental nivel West Ningunha . 1 a RM co enderezo 55 – 3
LNaslonecznieniePolnoc: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 4 ‘ ) , 1) ; / / Sensores de luz ambiental nivel North Ningunha . 1 a RM co enderezo 55 – 4
LNaslonecznieniePoludnie: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 1) ; / / Sensores de luz ambiental nivel sur Non . 1 a RM co enderezo 55 – 5
SilaWiatru: =: = RMGetPercentNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 7) ; / / Sensores de luz ambiental nivel sur Non . 1 a RM co enderezo 55 – 5
Algoritmos de control pode ser arbitraria e pode incluír calquera dos parámetros e as medidas ata agora utilizados e instalados sensores de certas magnitudes físicas .
/ Algoritmo / contido no temporizador repetición tan lenta . cada 10 minutos
Exemplo / / de enerxía – control eficiente de estores e toldos (resultando economías de custo significativas debido ao sol ' ; raios s para quentar a casa no inverno) ea acumulación de enerxía solar libre
/ Calefacción / Free e ecolóxico de cuartos na parte leste do edificio á luz solar
se (non RoletyWschod), entón / / se eles non están máis abertos
if (LNaslonecznienieWschod> ; 80) THEN / / o sol – comprobar o valor do empiricamente
if (mes < ; ; 5) meses e> ; 8) THEN / / o mes de setembro a abril
if (TzewWschod> ; 0) sensor de entón / / temperatura no sol quentaba superior 0C
if (hora> ; 8) e (Equipo < ; ; 11) entón / / de mañá, cando o sol brilla directamente do leste
comezar
RoletyWschod: = true ; / / Flag para abrir persianas Medio
OtworzRoletyWschod ; / / Función de envío dun acontecementos para o sistema eHouse condutores
ZamknijMarkizyWschod ; / / Non dar nada, porque o sol é moi baixo
final ;
/ Calefacción / Free e ecolóxico de cuartos no lado sur do edificio , o sol ' ; s raios
se (non RoletyPoludnie), entón / / se eles non están máis abertos
if (LNaslonecznieniePolodnie> ; 80) THEN / / o sol – comprobar o valor do empiricamente
if (mes < ; ; 5) meses e> ; 8) THEN / / o mes de setembro a abril
if (TzewPoludnie> ; 0) sensor de entón / / temperatura no sol quentaba superior 0C
if (hora> ; 10) e (Equipo < ; ; 14) entón / / de mañá, cando o sol brilla directamente do sur
comezar
RoletyPoludnie: = true ; / / Abre as fiestras de bandeira sur
OtworzRoletyPolodnie ; / / Función de envío dun acontecementos para o sistema eHouse condutores
ZamknijMarkizyPolodnie ; / / Non dar nada, porque o sol é moi baixo
final ;
/ Calefacción / Free e ecolóxico de cuartos no lado oeste do edificio , o sol ' ; s raios
se (non RoletyZachod), entón / / se eles non están máis abertos
if (LNaslonecznienieZachod> ; 80) THEN / / o sol – comprobar o valor do empiricamente
if (mes < ; ; 5) meses e> ; 8) THEN / / o mes de setembro a abril
if (TzewZachod> ; 0) sensor de entón / / temperatura no sol quentaba superior 0C
if (hora> ; 14) e (Equipo < ; ; 18) entón / / de mañá, cando o sol brilla directamente do oeste
comezar
RoletyZachod: = true ; / / Flag para abrir persianas Occidental
OtworzRoletyZachod ; / / Función de envío dun acontecementos para o sistema eHouse condutores
ZamknijMarkizyZachod ; / / Non dar nada, porque o sol é moi baixo
final ;
/ / Ecolóxico e Económico Limitar o impacto do quecemento de espazo libre pola luz solar no verán – toldos de control
/ Control / toldo – abrir toldos para reducir a radiación solar e quentar a casa no verán – leste
se (non MarkizaWschodA), entón / / se eles non están máis abertos
if (SilaWiatru < ; ; 5) entón / / se non hai vento
if ((mes> ; 4) e (Mes < ; ; 9)) verán, entón / / mes
if (LNaslonecznienieWschod> ; 50) THEN / / o sol brilla
if (hora> ; 6) e (Equipo < ; ; 12) entón / / se horas da mañá
if (TwewnWschodA> ; 25) THEN / / o cuarto é quente demais
comezar
MarkizaWschodA: = true ; / Bandeira / toldo Unha sala aberta
OtworzMarkizeWchodA ; / / Enviar un evento para o sistema eHouse condutores
final ;
/ / Similarmente , é posible replicar o código para o control independente de toldos en outras áreas da fachada oriental de cambiar a un valor distinto
/ Control / toldo – abrir toldos para reducir a radiación solar e quentar a casa ao mediodía de verán
se (non MarkizaPoludnieA), entón / / se eles non están máis abertos
if (SilaWiatru < ; ; 5) entón / / se non hai vento
if ((mes> ; 4) e (Mes < ; ; 9)) verán, entón / / mes
if (LNaslonecznieniePoludnie> ; 50) THEN / / o sol brilla
if (hora> ; 8) e (Equipo < ; ; 18) THEN / / se a hora en que o máis difícil don opera desde o sur
if (TwewnPoludnieA> ; 25) THEN / / o cuarto é quente demais
comezar
MarkizaPoludnieA: = true ; / Bandeira / toldo Unha sala aberta
OtworzMarkizePoludnieA ; / / Enviar un evento para o sistema eHouse condutores
final ;
/ / Similarmente , é posible replicar o código para o control independente de toldos en outras áreas da elevación do Sur A Cambiando a un valor diferente
/ Control / toldo – toldos abertos para reducir a radiación solar e quentar a casa no verán de lado oeste
se (non MarkizaZachodA), entón / / se eles non están máis abertos
if (SilaWiatru < ; ; 5) entón / / se non hai vento
if ((mes> ; 4) e (Mes < ; ; 9)) verán, entón / / mes
if (LNaslonecznieniePoludnie> ; 50) THEN / / o sol brilla
if (hora> ; 8) e (Equipo < ; ; 18) THEN / / se a hora en que o máis difícil don opera desde o sur
if (TwewnZachodA> ; 25) THEN / / o cuarto é quente demais
comezar
MarkizaZachodA: = true ; / Bandeira / toldo Unha sala aberta
OtworzMarkizeZachodA ; / / Enviar un evento para o sistema eHouse condutores
final ;
/ / Similarmente , é posible replicar o código para o control independente de toldos en outras áreas da fachada occidental de cambiar a un valor distinto
/ / Pechar o marqués é moi vento
if (LNaslonecznieniePoludnie < ; ; 20) THEN / / o sol non brilla (elixido empíricamente Tendo Choiva e chuvia)
if (MarkizaPoludnieA), entón / / se toldo aberto
comezar
MarkizaPoludnieA: = false ; / / Cambia a bandeira
ZamknijMarkizePoludnieA ; / / Enviar acontecementos para o eHouse controladores microprocesador
final ;
if (LNaslonecznienieZachod < ; ; 20) THEN / / o sol non brilla (elixido empiricamente)
if (MarkizaZachodA), entón / / se toldo aberto
comezar
MarkizaZachodA: = false ; / / Cambia a bandeira
ZamknijMarkizeZachodA ; / / Enviar acontecementos para o eHouse controladores microprocesador
final ;
if (LNaslonecznienieWschod < ; ; 20) THEN / / o sol non brilla (elixido empiricamente)
if (MarkizaWschodA), entón / / se toldo aberto
comezar
MarkizaWschodA: = false ; / / Cambia a bandeira
ZamknijMarkizeWschodA ; / / Enviar acontecementos para o eHouse controladores microprocesador
final ;
if (SilaWiatru> ; 5) entón / / Vento para pechar as cortinas
if (MarkizaZachodA ou MarkizaWschodA ou MarkizaPoludnieA), entón / / se un está aberto
comezar
ZamknijWszystkieMarkizy ; / / Enviar un evento para o sistema eHouse condutores
MarkizaZachodA: = false ;
MarkizaWschodA: = false ;
MarkizaPoludnieA: = false ;
final ;
/ / Persianas de peche de control automático de temperatura é moi baixa para o exterior a calor de escapar a través dos ocos restritivas fora da xanela
/ / Sur – pechar persianas co frío ea falta de sol para a elevación sur
if (RoletyPoludnie) THEN / / se está aberto
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

comezar
RoletyPoludnie: = false ; / / Abre as fiestras de bandeira sur
ZamknijRoletyPolodnie ; / / Función de envío dun acontecementos para o sistema eHouse condutores
/ / ZamknijMarkizyPolodnie ; / / Non dar nada, porque o sol é moi baixo
final ;
/ / Inicio do Leste cortinas pechando en frío e falta de sol para a fachada oriental
if (RoletyWschod) THEN / / se está aberto
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

comezar
RoletyWschod: = false ; / / Flag para abrir persianas Medio
ZamknijRoletyWschod ; / / Función de envío dun acontecementos para o sistema eHouse condutores
/ / ZamknijMarkizyWschod ; / / Non dar nada, porque o sol é moi baixo
final ;
/ / Pechar o lado occidental as cortinas o frío ea falta de sol para a elevación oeste
if (RoletyZachod) THEN / / se está aberto
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

comezar
RoletyZachod: = false ; / / Flag para abrir persianas Occidental
ZamknijRoletyZachod ; / / Función de envío dun acontecementos para o sistema eHouse condutores
/ / ZamknijMarkizyZachod ; / / Non dar nada, porque o sol é moi baixo
final ;