eHouse4Java software de código abierto para automatización del hogar eHouse

eHouse Domótica eHouse4Java – java (código abierto) de software incluye los siguientes módulos ( . Java – código fuente , . clase – La clase resultante):

  • Ehouse4java . Java – El núcleo de la aplicación y la interfaz principal
  • ehousecommunication . Java – funciones de comunicación y la configuración
  • EhouseTCP . Java – la comunicación y la configuración de los controladores
  • EventsToSend . Java – manejo de eventos secundarios
  • EventToSend . Java – la definición de un único evento
  • GraphicObject . Java – definiciones de objetos gráficos
  • ISYS . Java – incluye funciones dedicadas para los vendedores
  • RunEvent . Java – Envío de eventos de formulario de texto
  • StatusEhouse . Java – clase contiene una instancia para cada controlador eHouse1
  • StatusEthernet . Java – clase contiene una instancia para cada controlador Ethernet eHouse
  • StatusServer . Java – Auxiliar de TCP / IP del servidor , el envío de todos los controladores de estado a través de TCP / IP para paneles de cliente (externo a través de LAN , WAN , Intranet , Internet)
  • visualización . Java – Visualización / clase de control gráfico de acuerdo con la visualización eHouse y estándar de control gráfico

Las funciones y variables globales se describen en el software de código fuente eHouse4Java .
El software incluye hilos independientes , por ejemplo, . Comunicación , que se realizan en el fondo en relación con la aplicación principal .
Esto no se detienen o retrasan la aplicación que los procesos de toma demasiado tiempo , que dio lugar a una baja significativa lento de aplicación y la posibilidad de suspensión a la espera de la comunicación (cerraduras muertas) .
Los temas principales son:

  • TCP Client (para recibir el estado del controlador , el tcp / ip de la LAN , WAN , Internet , Intranet)
  • Escucha UDP (para escuchar a emitir en el estado sin conexión UDP) – sólo dentro de la LAN , Intranet
  • Sintetizador de voz para reproducir cualquier mensaje de texto acústicos
  • Multiproceso TCP / IP del servidor – a la ruta de estado recibido a los paneles de cliente conectados de cualquier tipo (a través de redes de área local , WIFI , Internet , Intranet , WAN)

Los nombres de los medios de comunicación con los controladores se incluyen con la configuración de la forma de elegir el tipo de conexión (LAN TCP , LAN UDP , Internet , Off) .
Otros hilos se activan mediante las variables globales están en clases ” EhouseTCP ” o ” ehousecommunication ” .

La aplicación utiliza una visualización de acuerdo con eHouse estándar , generada a partir de aplicaciones CorelDraw mediante secuencias de comandos que permiten:

  • eHouse importación de configuración del sistema
  • creación de objetos gráficos manualmente o con un script
  • exportar datos de todos los métodos de visualización para todos los paneles , navegadores web , ordenador personal , tabletas , smartphones y otros sistemas

Esto se discute más en el artículo:
” la creación de la visualización gráfica y el control eHouse casa inteligente ” .
software de visualización se basa en unos gráficos vectoriales escalables (SVG) .
Este método le permite ” sin pérdidas ” Dibujo de curvas de calidad , texto , figuras geométricas simples , independientemente del tamaño de la ampliación , Pantalla de cambio , etc .
No hubiera sido posible utilizando las imágenes de fondo gráficos tales como jpg , mapas de bits , etc . .
Software de visualización ha sido optimizada con el fin de reducir la utilización de la CPU y el tiempo de procesamiento de gráficos cuando se trabaja en línea , debido a la gran cantidad de datos a procesar . Las imágenes gráficas son en caché y se divide en señales de control apropiadas y se procesan cuando se recibe el estado del controlador , y muestra en la pantalla mucho más rápido de la memoria caché de visualización de cada controlador .

Esto permite:

  • reducción significativa de los datos procesados ​​para la visualización con la imagen cambia
  • significativamente reducir el parpadeo al cambiar las imágenes proyectadas
  • reducción significativa de la carga de la CPU y la visualización de datos
  • el uso de mucho ” más débil ” , hardware menos eficiente y menos costoso , paneles gráficos , tabletas , el panel de control , etc . , mientras que el mantenimiento de un entorno de trabajo cómodo
  • reducción en el consumo de energía que es especialmente importante en el equipo y la batería móvil y la longitud de trabajo en baterías

Esto se discute con capturas de pantalla en el artículo:
” Visualización gráfica y el control del hogar inteligente en Java ”

EHouse4Java comunicación con los controladores domótica

eHouse1 Bajo la supervisión del PC

En esta versión de la aplicación eHouse . exe funciona como un estado del receptor de la RS – 485 (con convertidor de RS – 485/RS – 232) y transmite el estado sin ningún cambio en los dos métodos no chocan entre sí:

  • eHouse . exe funciona como un servidor TCP / IP responde a las preguntas sobre el panel de estado , refiriéndose además conectar los paneles y mantenerlos hasta que se desconecte por cualquier razón . Este método es especialmente útil con los intentos de establecer comunicación con la placa exterior TCP / IP a través de la red , tales como la Internet donde no es posible recibir el estado de UDP .
  • eHouse . exe envía el protocolo de transmisión UDP sin conexión para cualquier número de clientes de la LAN , Intranet . Esto significa que , que el panel no está conectando con el servidor , sino que escucha mensajes de difusión desde ” eHouse . exe ” aplicaciones . De esta manera, no importa cuántos destinatarios paneles estado no cambia la carga de la red , o el equipo en el que la ” eHouse . exe ” aplicación se ejecuta . Desafortunadamente no es posible o es muy difícil de transmitir difusión UDP a través de Internet por lo que en este caso el primer método se debe utilizar .

eHouse1 Bajo la supervisión del Gestor de comunicación

En esta versión , Gestor de comunicación recibe estados de entrada a través de RS – 485 (eHouse1 de controladores) y transmite el estado sin ningún cambio en los dos métodos no chocan entre sí:

  • Gestor de comunicación funciona como un servidor TCP / IP responde a las preguntas sobre el panel de estado , refiriéndose además conectar los paneles y mantenerlos hasta que se desconecte por cualquier razón . Este método es especialmente valiosos intentos de establecer comunicación con la placa exterior de la LAN , tales como la Internet donde no es posible recibir el estado de UDP .
  • Gestor de comunicación envía transmisiones (conexión) del protocolo UDP son para cualquier número de clientes de la LAN , Intranet .
    Esto significa que , que el panel no está conectando con el servidor de Gestor de comunicación TCP , pero escuchando los mensajes emitidos desde CM . De esta manera, no importa cuántos destinatarios paneles de estado , no cambia la carga de la red o utilización de la CPU CommManager . Difusión de difusión UDP no es posible , o está fuertemente impedido a través de la Internet por lo que en este caso el primer método se debe utilizar .

EHouse Ethernet (eHouse4Ethernet)

En esta versión de controladores Ethernet: Gestor de comunicación , EthernetRoomManager , etc . , independientemente enviar su estado de dos maneras , no choquen unos con otros:

  • Cada controlador funciona como un servidor TCP / IP responde a las preguntas sobre el panel de estado , refiriéndose además conectar los paneles y mantenerlos hasta que se desconecte por cualquier razón . Este método es particularmente valiosos intentos de establecer comunicación con los paneles fuera de la LAN , tales como la Internet , donde no es posible recibir el estado de UDP .
    Sin embargo , en el caso de varios controladores de Ethernet es necesario para mantener una conexión a una red TCP / IP cada controlador , para recoger a un estado completo sistema directamente desde los controladores . Esto puede resultar en una mayor carga en el panel de control del procesador , gravedad de los problemas relacionados con la comunicación . En este caso , es preferible colocarlo en la aplicación del lado LAN , que recibe el estado UDP local , y reenvía el sobre TCP / IP a través de Internet . Esto se realiza y se discuten en la solicitud de eHouse4Java , que permite esta solución . La desventaja es la necesidad de mantener hardware adicional que realiza estas funciones .
  • Cada controlador envía una difusión (conexión) del protocolo UDP son para cualquier número de clientes de la LAN , Intranet . Esto significa que , que el panel no se conecta con el controlador de servidor TCP , pero escuchando los mensajes de difusión de todos los controladores . De esta manera, no importa cuántos destinatarios paneles estado no cambia la carga de la red o la utilización de la CPU del controlador . Radiodifusión paquetes UDP no es posible o se impide en gran medida a través de la internet , por lo que en este caso el primer método se debe utilizar . La posibilidad de transmisión de la UDP a veces es posible, dependiendo del tipo de enlace , Rendimiento . A veces es posible obtener una difusión UDP a través del enlace VPN configurado correctamente , Sin embargo , incluso en esta situación , paquetes pueden perderse , debido a la falta de mecanismos de seguridad para UDP . Datos incorrectos se cancela automáticamente los paneles de software para la suma de comprobación no eHouse (suma de comprobación)