eHouse4Java Software Open Source para eHouse Domótica

Ehouse Domótica eHouse4Java – java software (open source), inclúe os seguintes módulos ( . Java – código fonte , . clase – A clase resultante):

  • Ehouse4java . Java – O núcleo da aplicación e interface principal
  • ehousecommunication . Java – funcións de comunicación e de configuración
  • EhouseTCP . Java – comunicación e configuración dos controladores
  • EventsToSend . Java – manipulación de eventos secundario
  • EventToSend . Java – a definición dun único evento
  • GraphicObject . Java – gráficas definicións de obxectos
  • ISYS . Java – inclúe funcións dedicadas a provedores
  • RunEvent . Java – Envío de eventos forma de texto
  • StatusEhouse . Java – clase contén unha instancia para cada controlador eHouse1
  • StatusEthernet . Java – clase contén unha instancia para cada controlador Ethernet eHouse
  • StatusServer . Java – Auxiliar de TCP / IP do servidor , envío de todos os estados controladores a través de TCP / IP para paneis cliente (externo vía LAN , WAN , Intranet , Internet)
  • visualización . Java – Visualización / clase de control gráfico de acordo coa visualización eHouse e patrón de control gráfico

As funcións e variables globais son descritas no programa de código fonte eHouse4Java .
O software inclúe liñas independentes , por exemplo . Comunicación , que son realizados no fondo en relación á aplicación principal .
Este non parar ou atrasar a aplicación que os procesos levan moito tempo , o que resultou dunha abaixo significativa lenta de aplicación e da posibilidade de suspensión mentres se espera para unha comunicación (Locks mortas) .
Os temas principais son:

  • TCP Client (para recibir o estado do controlador , o TCP / IP na LAN , WAN , Internet , Intranet)
  • UDP Listener (para escoitar a transmisión de estado no UDP sen conexión) – só dentro da LAN , Intranet
  • Sintetizador de voz para reproducir mensaxes de texto acústicos
  • Servidor TCP / IP de varios segmentos – para o estado de percorrido recibidas aos paneis cliente conectados de calquera tipo (por medio de redes LAN , WIFI , Internet , Intranet , WAN)

Nomes dos medios de comunicación cos controladores están incluídos con axustes sobre o xeito escoller o tipo de conexión (LAN TCP , LAN UDP , Internet , Off) .
Outros temas son activados mediante variables globais están en clases ” EhouseTCP ” ou ” ehousecommunication ” .

A aplicación utiliza unha visualización de acordo coa normativa eHouse , xerado a partir de aplicacións CorelDraw usando scripts que permiten:

  • configuración do sistema de importación eHouse
  • creación de obxectos gráficos manualmente ou cun script
  • exportación de datos para todos os métodos de visualización para todos os paneis , navegadores web , PC , comprimidos , smartphones e outros sistemas

Isto é discutido máis no artigo:
” creación de visualización gráfica e control eHouse casa intelixente ” .
software de visualización baseada nun Scalable Vector Graphics (SVG) .
Este método permite que ” sen perdas ” curvas de deseño de calidade , texto , figuras xeométricas simples , independentemente do tamaño da ampliación , Cambio de pantalla , etc .
Non sería posible usar as imaxes de fondo gráficos, tales como jpg , bitmaps , etc . .
Software de visualización foi optimizado de forma a reducir a utilización da CPU e tempo de procesamento gráfico ao traballar en liña , debido á gran cantidade de datos a procesar . As imaxes gráficas son almacenadas e divídese en sinais de control apropiados e transformados cando recibe o estado do controlador , e exhibida na pantalla moito máis rapidamente a partir do caché de cada controlador de visualización .

Isto permite:

  • redución significativa nos datos procesados ​​para ver os cambios de imaxe
  • reducir significativamente a intermitencia cando cambiar imaxes proxectadas
  • redución significativa da carga de visualización de datos da CPU e
  • o uso de moi ” máis feble ” , hardware menos eficiente e menos dispendiosa , paneis gráficos , comprimidos , o panel de control , etc . , mantendo ao mesmo tempo un traballo cómodo
  • redución no consumo de enerxía, que é especialmente importante en equipos de batería e mobles e duración do traballo en baterías

Isto é discutido con screenshots no artigo:
” Visualización gráfica e control de casa intelixente en Java ”

EHouse4Java comunicación con controladores automatización residencial

eHouse1 baixo a supervisión do PC

Nesta versión da aplicación Ehouse . exe funciona como un estado de receptor do RS – 485 (con conversor RS – 485/RS – 232) e transmite o estado sen ningunha modificación en dous métodos non colidem entre si:

  • Ehouse . obras exe como un servidor TCP / IP responde a consultas sobre o panel de estado , referíndose aínda conectar os paneis e perder las ata desactivado por calquera razón . Este método é especialmente valioso con os intentos de establecer unha comunicación co panel de TCP / IP a través da rede do lado de fóra , como a Internet, onde non é posible recibir o estado UDP .
  • Ehouse . exe envía a transmisión protocolo UDP sen conexión para calquera número de clientes na LAN , Intranet . Isto significa que, , que o panel non está conectando ao servidor , pero escoita de mensaxes difundidas ” Ehouse . exe ” aplicacións . Desta forma, non importa cantos destinatarios estado paneis non cambia a carga da rede , ou o ordenador en que o ” Ehouse . exe ” aplicación é executado . Desafortunadamente, non é posible ou é moi difícil de transmitir información UDP a través de Internet e, neste caso o primeiro método debe ser usado .

eHouse1 baixo a supervisión da CommManager

Nesta versión , CommManager recibe status de entrada vía RS – 485 (a partir de eHouse1 controladores) e transmite o estado sen ningunha modificación en dous métodos non colidem entre si:

  • CommManager funciona como un servidor TCP / IP responde a consultas sobre o panel de estado , referíndose aínda conectar os paneis e perder las ata desactivado por calquera razón . Este método é especialmente valioso intentos para establecer a comunicación co exterior do panel de LAN , como a Internet, onde non é posible recibir o estado UDP .
  • CommManager envía transmisións (sen conexión) o protocolo UDP son para calquera número de clientes en LAN , Intranet .
    Isto significa que, , que o panel non está conectando ao servidor TCP CommManager , pero escoitando as mensaxes difundidas desde CM . Desta forma, non importa cantas destinatarios paneis de estado , iso non cambia a carga da rede ou o uso da CPU CommManager . Broadcasting difusión UDP non é posible , ou é fortemente impedida pola Internet, facendo neste caso, o primeiro método debe ser usado .

Ethernet eHouse (eHouse4Ethernet)

Nesta versión de controladores Ethernet: CommManager , EthernetRoomManager , etc . , independentemente enviar o seu status de dous xeitos , non chocar entre si:

  • Cada controlador funciona como un servidor TCP / IP responde a consultas sobre o panel de estado , referíndose aínda conectar os paneis e perder las ata desactivado por calquera razón . Este método é especialmente valioso intentos para establecer a comunicación cos paneis exteriores da LAN , como a Internet , en que non sexa posible recibir o estado UDP .
    Con todo , no caso de que varios controladores Ethernet é necesario para manter unha conexión a unha rede TCP / IP de cada controlador , para incorporarse un status completo do sistema directamente a partir de controladores . Isto pode producir unha maior carga sobre o panel de control do procesador , gravidade dos problemas relacionados coa comunicación . Neste caso , é preferible colocar sobre a aplicación do lado LAN , que recibe o estado UDP locais , e encamiña o TCP / IP vía Internet . Isto é realizado e discutido na aplicación eHouse4Java , que permite que esta solución . A desvantaxe é a necesidade de manter un hardware adicional, que desempeña estas funcións .
  • Cada controlador envía un broadcast (conexión) o protocolo UDP son para calquera número de clientes en LAN , Intranet . Isto significa que, , que o panel non está conectando ao servidor TCP controlador , pero escoitando as mensaxes transmitidas de todos os controladores . Desta forma, non importa cantos destinatarios estado paneis non altera a carga da rede ou o uso da CPU controlador . Paquetes de difusión UDP non é posible ou é fortemente impedida por internet , por iso, neste caso, o primeiro método debe ser usado . A posibilidade de transmisión do UDP veces é posible, dependendo do tipo de conexión , Actuación . Ás veces, é posible obter unha transmisión a través de UDP VPN conexión configurado adecuadamente , Con todo , mesmo nesta situación , paquetes poden ser perdidos , debido á falta de mecanismos de seguridade para UDP . Datos incorrectos automaticamente anulado polos paneis de software eHouse para comprobación non (confía suma)