eHouse Home Automation eHouse4Java – java (Open source) software bestaat uit de volgende modules ( . Java – broncode , . klasse – De resulterende klasse):
- Ehouse4java . Java – De kern van de applicatie en de belangrijkste interface
- ehousecommunication . Java – communicatiefuncties en configuratie
- EhouseTCP . Java – communicatie en configuratie van controllers
- EventsToSend . Java – secundaire event handling
- EventToSend . Java – de definitie van een enkele gebeurtenis
- GraphicObject . Java – grafisch object definities
- ISYS . Java – bevat speciale functies voor verkopers
- RunEvent . Java – Het verzenden van gebeurtenissen uit de vorm van tekst
- StatusEhouse . Java – klasse bevat een voorbeeld voor elke eHouse1 controller
- StatusEthernet . Java – klasse bevat een voorbeeld voor elke Ethernet eHouse controller
- StatusServer . Java – Extra TCP / IP-server , verzenden van alle controllers status via TCP / IP naar klant panelen (extern via LAN , WAN , Intranet , Internet)
- visualisatie . Java – Visualisatie / grafische controle klasse in overeenstemming met eHouse visualisatie en grafische controle standaard
De functies en globale variabelen worden beschreven in de broncode eHouse4Java .
De software bevat onafhankelijke discussies , bv . Verbinding , die worden uitgevoerd in de achtergrond ten opzichte van de hoofdzaak .
Dit niet stoppen of vertragen de toepassing die processen te lang duren , waardoor een aanzienlijke vertraging van de toepassing en de mogelijkheid suspensie afwachting van communicatie (dead sloten) .
De belangrijkste onderwerpen die zijn:
- TCP Client (om de status van de controller te ontvangen , de TCP / IP op het LAN , WAN , Internet , Intranet)
- UDP Listener (voor het luisteren naar de status van uitzending in het verbindingsloze UDP) – alleen binnen het LAN , Intranet
- Spraaksynthesizer om een akoestische SMS-berichten af te spelen
- Multithreaded TCP / IP-server – aan de route van de ontvangen status van de aangesloten klantenpanels van elk type (via LAN's , WIFI , Internet , Intranet , WAN)
Namen van communicatiemiddelen met controllers zijn opgenomen met de instellingen op het formulier kiest u het type verbinding (LAN TCP , LAN UDP , Internet , Off) .
Andere onderwerpen die worden geactiveerd met behulp van globale variabelen behoren tot de klassen ” EhouseTCP ” of ” ehousecommunication ” .
De applicatie maakt gebruik van een visualisatie volgens eHouse standaard , gegenereerd vanuit CorelDraw toepassingen met behulp van scripts die het mogelijk maken:
- import eHouse systeemconfiguratie
- creëren van grafische objecten handmatig of met een script
- gegevens exporteren voor alle visualisatie methoden voor alle panelen , webbrowsers , pc , tabletten , smartphones en andere systemen
Dit wordt verder besproken in het artikel:
” het maken van grafische visualisatie en controle eHouse slimme woning ” .
visualisatie software is gebaseerd op een Scalable Vector Graphics (SVG) .
Met deze methode kunt u ” lossless ” kwaliteit tekening curves , tekst , eenvoudige geometrische figuren , ongeacht de grootte van de uitbreiding , Scherm verschuiving , enz. .
Het zou niet mogelijk zijn geweest met de achtergrond van grafische beelden, zoals jpg , bitmaps , enz. . .
Software visualisatie is geoptimaliseerd om het gebruik van de CPU en grafische verwerking te verminderen bij het werken online , vanwege de grote hoeveelheid data te verwerken . Grafische beelden zijn opgeslagen en verdeeld in geschikte stuursignalen en verwerkt na ontvangst van de status van de controller , en weergegeven op het scherm veel sneller van visualisatie cache van elke controller .
Dit maakt:
- aanzienlijke vermindering van de verwerkte data voor visualisatie met het beeld verandert
- een aanzienlijke vermindering van flikkering bij het wisselen van geprojecteerde beelden
- aanzienlijke vermindering van de belasting van CPU en gegevensvisualisatie
- het gebruik van veel ” zwakkere ” , minder efficiënt en minder dure hardware , grafische panelen , tabletten , het bedieningspaneel , enz. . , met behoud van een comfortabele werkhouding
- vermindering van het energieverbruik wat vooral belangrijk is in de batterij en mobiele apparatuur en de lengte van het werk op batterijen
Dit wordt besproken met screenshots in het artikel:
” Grafische visualisatie en intelligente home control in Java ”
EHouse4Java communicatie met controllers domotica
eHouse1 Onder leiding van PC
In deze versie van de toepassing eHouse . exe werkt als een ontvanger status van de RS – 485 (met converter RS – 485/RS – 232) en zendt de status zonder veranderingen op de twee methoden niet botsen met elkaar:
- eHouse . exe werkt als een TCP / IP-server reageert op vragen over de status paneel , verwijst verder sluit de panelen en deze handhaven totdat losgekoppeld, om welke reden . Deze methode is bijzonder waardevol bij pogingen om de communicatie met de buitenwereld TCP / IP-netwerk via panel , zoals internet wanneer het niet mogelijk om de status UDP .
- eHouse . exe stuurt de uitzending verbindingsloze UDP-protocol voor een onbeperkt aantal clients in het LAN , Intranet . Dit betekent dat , dat het paneel niet verbinden met de server , maar luistert broadcast-berichten van ” eHouse . exe ” toepassingen . Op deze manier maakt niet uit hoeveel ontvangers panelen de status verandert niets aan de belasting van het netwerk , of de computer waarop de ” eHouse . exe ” applicatie draait . Helaas is het niet mogelijk of zeer moeilijk UDP broadcast zodat zenden via het internet in dit geval de eerste methode worden gebruikt .
eHouse1 Onder leiding van CommManager
In deze versie , CommManager ontvangt inkomende statussen via RS – 485 (van eHouse1 controllers) en zendt de status zonder veranderingen op de twee methoden niet botsen met elkaar:
- CommManager werkt als een TCP / IP-server reageert op vragen over de status paneel , verwijst verder sluit de panelen en deze handhaven totdat losgekoppeld, om welke reden . Deze methode is bijzonder waardevol pogingen om de communicatie met het paneel buiten de LAN , zoals internet wanneer het niet mogelijk om de status UDP .
- CommManager stuurt uitzendingen (verbindingsloos) UDP-protocol zijn voor een onbeperkt aantal clients in het LAN , Intranet .
Dit betekent dat , dat het paneel niet verbinden met de server TCP CommManager , maar luisteren naar de boodschappen uitzenden van CM . Op deze manier maakt niet uit hoeveel ontvangers panelen van de status , Het verandert niets aan de belasting van het netwerk of CommManager CPU-gebruik . Broadcasting UDP broadcast is niet mogelijk , of sterk belemmerd door het internet dus in dit geval de eerste methode worden gebruikt .
Ethernet eHouse (eHouse4Ethernet)
In deze versie van Ethernet-controllers: CommManager , EthernetRoomManager , enz. . , onafhankelijk van elkaar sturen hun status op twee manieren , niet met elkaar in botsing:
- Elke controller werkt als een TCP / IP-server reageert op vragen over de status paneel , verwijst verder sluit de panelen en deze handhaven totdat losgekoppeld, om welke reden . Deze methode is bijzonder waardevol pogingen om de communicatie met de panelen buiten de LAN , zoals internet , wanneer het niet mogelijk om de status UDP .
Echter , in het geval van meerdere Ethernet controllers is het aanhouden van een verbinding met een TCP / IP iedere controller , op te halen een compleet systeem status direct van controllers . Dit kan resulteren in een grotere belasting op de processor bedieningspaneel , ernst van de problemen in verband met de communicatie . In dit geval , het de voorkeur om op de LAN zijtoepassing , dat krijgt de lokale UDP-status , en stuurt de via TCP / IP via Internet . Dit wordt gerealiseerd en besproken in toepassing eHouse4Java , waardoor deze oplossing . Het nadeel is de noodzaak om extra hardware die deze functies uitvoert handhaven . - Elke controller verzendt een broadcast (verbindingsloze) UDP-protocol voor een onbeperkt aantal clients zijn op het LAN , Intranet . Dit betekent dat , dat het paneel niet verbinden met de TCP-server controller , maar luisteren naar de boodschappen uit te zenden van alle controllers . Op deze manier maakt niet uit hoeveel ontvangers panelen de status verandert niets aan de belasting van het netwerk of controller CPU-gebruik . Broadcasting UDP-pakketten niet mogelijk is of is sterk belemmerd door het internet , dus in dit geval de eerste methode worden gebruikt . De mogelijkheid van indiening van de UDP soms mogelijk afhankelijk van het type koppeling , Prestatie . Soms is het mogelijk een broadcast UDP krijgen via VPN verbinding geconfigureerd , Echter , ook in deze situatie , pakketten verloren , wegens gebrek aan veiligheidsvoorzieningen voor UDP . Onjuiste gegevens worden automatisch geannuleerd door de software eHouse panelen voor niet checksum (check sum)