eHouse4Java Open Source Software pentru Home Automation eHouse

eHouse Home Automation eHouse4Java – java (Open source) Software-ul include următoarele module ( . java – codul sursă , . clasă – Clasa de rezultat):

  • Ehouse4java . java – Nucleul cererii și interfața principală
  • ehousecommunication . java – funcțiile de comunicare și de configurare
  • EhouseTCP . java – comunicare și configurare a controlorilor
  • EventsToSend . java – secundar eveniment de manipulare
  • EventToSend . java – definirea unui singur eveniment
  • GraphicObject . java – definiții grafice obiect
  • ISYS . java – include functii dedicate pentru furnizorii de
  • RunEvent . java – Trimiterea evenimentele de la forma de text
  • StatusEhouse . java – Clasa contine un exemplu pentru fiecare operator eHouse1
  • StatusEthernet . java – Clasa contine un exemplu pentru fiecare controler Ethernet eHouse
  • StatusServer . java – Auxiliar TCP / IP Server , trimiterii statutul de controlere prin TCP / IP pentru panouri client (extern prin LAN , WAN , Intranet , Internet)
  • vizualizare . java – Vizualizare / clasa de control grafic, în conformitate cu vizualizare eHouse și standard de control grafic

Funcțiile și variabilele globale sunt descrise în codul sursă software-ul eHouse4Java .
Software-ul include fire independente , de exemplu, . Comunicare , care sunt efectuate în fundal, în legătură cu cererea principală .
Acest lucru nu se opresc sau întârzie aplicarea că procesele durează prea mult , care a dus la o încetinire semnificativă a cererii și posibilitatea de suspendare în timp ce de așteptare pentru comunicare (încuietori moarte) .
Firele principale sunt:

  • TCP Client (pentru a primi statutul de operator , TCP / IP pe LAN , WAN , Internet , Intranet)
  • Ascultător UDP (pentru a asculta pentru a difuza statutul în conexiune UDP) – numai în cadrul LAN , Intranet
  • Sintetizator de vorbire pentru a juca toate mesajele scrise acustice
  • Multithreaded TCP / IP a serverului – la statutul de trecere a primit la panourile client conectate de orice tip (prin intermediul LAN-uri , WIFI , Internet , Intranet , WAN)

Nume de medii de comunicare cu controlerele sunt incluse cu setările de pe formularul alege tipul de conexiune (LAN TCP , LAN UDP , Internet , Off) .
Alte fire sunt activate cu ajutorul variabilelor globale sunt în clase ” EhouseTCP ” sau ” ehousecommunication ” .

Aplicația utilizează o vizualizare în conformitate cu standardul eHouse , generate din aplicațiile care folosesc scripturi CorelDraw care permit:

  • eHouse de import sistemul de configurare
  • crearea de obiecte grafice manual sau cu un script
  • exportul de date pentru toate metodele de vizualizare pentru toate panourile , web browsere , PC , comprimate , smartphone-uri și alte sisteme

Acest lucru este discutat în continuare în articol:
” crearea de vizualizare grafică și eHouse Smart Control acasă ” .
software-ul de vizualizare se bazează pe o Scalable Vector Graphics (SVG) .
Această metodă vă permite să ” fără pierderi ” curbelor de desen de calitate , text , simple, figuri geometrice , indiferent de dimensiunea extinderii , Ecran schimbare , etc .
Acesta nu ar fi fost posibil cu ajutorul imagini de fundal grafice, cum ar fi jpg , bitmap , etc . .
Software-ul de vizualizare a fost optimizat pentru a reduce utilizarea procesorului și a timpului de procesare grafica atunci cand se lucreaza on-line , din cauza cantitate mare de date pentru a procesa . Imaginile grafice sunt memorate în cache și împărțite în semnale de control adecvate și prelucrate la primirea statutului de operator , și afișate pe ecran mult mai repede din cache-ul de vizualizare a fiecărui operator .

Acest lucru permite:

  • reducere semnificativă în datele prelucrate pentru vizualizare cu modificările de imagine
  • reduce în mod semnificativ pâlpâire atunci când schimbă imaginile proiectate
  • reducerea semnificativă a sarcinii de vizualizare procesorului și a datelor
  • utilizarea de mult ” mai slab ” , mai puțin eficientă și mai puțin costisitoare de hardware , Panouri grafice , comprimate , panoul de control , etc . , menținând în același timp un mediu de lucru confortabil
  • reducerea consumului de energie, care este deosebit de important în echipamente baterie și mobile precum și durata muncii de la baterii

Acest lucru este discutat cu capturi de ecran din articol:
” Vizualizare grafică și de control acasă inteligent în Java ”

EHouse4Java comunicarea cu controlorii acasă de automatizare

eHouse1 Sub supravegherea PC

În această versiune de eHouse cererea . exe funcționează ca un receptor al statutului RS – 485 (cu convertor RS – 485/RS – 232) și transmite starea fără modificări privind cele două metode nu se ciocnesc unele cu altele:

  • eHouse . lucrări exe ca un server TCP / IP răspunde la întrebări cu privire la starea panoului , trimitere conecta în continuare a panourilor și să le păstreze până la deconectat pentru orice motiv . Această metodă este deosebit de valoroasă, cu încercări de a stabili o comunicare cu exteriorul panoului de TCP / IP prin intermediul rețelei , cum ar fi internetul în cazul în care nu este posibil de a primi statutul de UDP .
  • eHouse . exe trimite protocolul UDP difuzare conexiune pentru orice numar de clienti de pe LAN , Intranet . Acest lucru înseamnă că , faptul că panoul nu se conectează la server , dar ascultă mesajele difuzate de la ” eHouse . exe ” aplicații . În acest fel, indiferent cât de multe beneficiari panouri statut nu schimbă încărcare a rețelei , sau computerul pe care ” eHouse . exe ” Aplicatia ruleaza . Din păcate, nu este posibil sau este foarte dificil de a transmite UDP difuzare prin Internet, astfel, în acest caz, prima metodă ar trebui să fie utilizate .

eHouse1 Sub supravegherea CommManager

În această versiune , CommManager primește stările primite prin RS – 485 (de la eHouse1 controlorilor) și transmite starea fără modificări privind cele două metode nu se ciocnesc unele cu altele:

  • CommManager funcționează ca un server TCP / IP răspunde la întrebări cu privire la starea panoului , trimitere conecta în continuare a panourilor și să le păstreze până la deconectat pentru orice motiv . Această metodă este deosebit de valoroase încercările de a stabili comunicarea cu panoul din afara LAN , cum ar fi internetul în cazul în care nu este posibil de a primi statutul de UDP .
  • CommManager trimite emisiunilor (de conexiune), protocolul UDP sunt pentru orice numar de clienti de pe LAN , Intranet .
    Acest lucru înseamnă că , faptul că panoul nu se conectează la server TCP CommManager , dar ascultarea mesajelor difuzate la CM . În acest fel, indiferent cât de multe panouri beneficiari ai statutului , aceasta nu schimbă încărcare a rețelei sau CommManager utilizarea procesorului . Emisiune de radiodifuziune UDP nu este posibilă , sau este puternic împiedicată prin internet astfel încât, în acest caz, prima metodă ar trebui să fie utilizate .

Ethernet eHouse (eHouse4Ethernet)

În această versiune de controlere Ethernet: CommManager , EthernetRoomManager , etc . , trimite independent statutul lor în două moduri , nu se ciocnesc unele cu altele:

  • Fiecare operator funcționează ca un server TCP / IP răspunde la întrebări cu privire la starea panoului , trimitere conecta în continuare a panourilor și să le păstreze până la deconectat pentru orice motiv . Această metodă este deosebit de valoroase încercările de a stabili comunicarea cu panouri din afara LAN , cum ar fi Internet , în cazul în care nu este posibil de a primi statutul de UDP .
    Totuși , în cazul controlorilor de mai multe Ethernet este necesar să se mențină o conexiune la o rețea TCP / IP pentru fiecare controler , pentru a ridica un statut sistem complet direct de la operatori . Acest lucru poate duce la o sarcină mai mare pe panoul de control procesorul , gravitatea problemelor legate de comunicare . În acest caz, , este de preferat să introducă pe partea de LAN cererea , care primește statutul de UDP locale , înainte și peste TCP / IP prin intermediul Internetului . Acest lucru este realizat și discutat în aplicare eHouse4Java , care permite această soluție . Dezavantajul este necesitatea de a menține hardware suplimentar care îndeplinește aceste funcții .
  • Fiecare operator trimite o emisiune (de conexiune), protocolul UDP sunt pentru orice numar de clienti de pe LAN , Intranet . Acest lucru înseamnă că , faptul că panoul nu se conectează la serverul operatorului TCP , dar ascultarea mesajelor difuzate la toate controlerele . În acest fel, indiferent cât de multe beneficiari panouri statut nu schimbă sarcina de rețea sau controlor de utilizare CPU . Radiodifuziune pachete UDP nu este posibilă sau este puternic împiedicată prin intermediul internetului , în acest caz, prima metodă ar trebui să fie utilizate . Posibilitatea de transmitere a UDP este posibil ca, uneori, în funcție de tipul de legătură , Performanță . Uneori este posibil să se obțină o emisiune UDP prin intermediul link-ul de VPN configurat corect , Totuși , chiar și în această situație , pachetele pot fi pierdute , din cauza lipsei de mecanisme de securitate pentru UDP . Date incorecte este anulată automat de panourile de control eHouse software pentru non (check suma)