eHouse4Java відкритим вихідним кодом для автоматизації Головна EHouse

EHouse Home Automation eHouse4Java – Java (Open Source) програмне забезпечення включає в себе наступні модулі ( . Ява – вихідний код , . клас – В результаті клас):

  • Ehouse4java . Ява – Ядро програми та основного інтерфейсу
  • ehousecommunication . Ява – комунікаційні функції і настройки
  • EhouseTCP . Ява – зв'язку і конфігурації контролерів
  • EventsToSend . Ява – вторинна обробка подій
  • EventToSend . Ява – визначення однієї події
  • GraphicObject . Ява – графічний визначення об'єкта
  • ISYS . Ява – включає спеціальні функції для постачальників
  • RunEvent . Ява – Відправка подій з текстовою формою
  • StatusEhouse . Ява – Клас містить один примірник для кожного контролера eHouse1
  • StatusEthernet . Ява – Клас містить один примірник для кожного контролера Ethernet EHouse
  • StatusServer . Ява – Допоміжні TCP / IP сервер , відправка всіх контролерів статус через TCP / IP на клієнтських панелей (зовнішні по локальній мережі , Глобальні мережі передачі информаціі , Intranet , Internet)
  • зоровий образ . Ява – Візуалізація / графічний класу контролю відповідно до візуалізацією EHouse і графічний стандарт управління

Функції та глобальні змінні описані у вихідному коді програмного забезпечення eHouse4Java .
Програмне забезпечення включає в себе незалежних потоків , наприклад, . Комунікація , які виконуються у фоновому режимі по відношенню до основних додатком .
Це не зупинити або уповільнити процеси додатки, які занадто довго , що призвело до значного уповільнення додатки і можливість підвіски під час очікування зв'язку (мертві замки) .
Основні теми, є:

  • TCP Client (для отримання статусу контролера , TCP / IP в локальній мережі , Глобальні мережі передачі информаціі , Інтернет , Інтранет)
  • UDP Listener (для прослуховування трансляції статусу в з'єднання UDP) – тільки в межах локальної мережі , Intranet
  • Синтезатор мови для відтворення будь-яких акустичних текстових повідомлень
  • Багатопотоковий TCP / IP сервер – на маршруті отримав статус підключених клієнтів панелей будь-якого типу (через локальні мережі , WIFI , Інтернет , Intranet , WAN)

Імена засобів комунікації з контролерами, які включені в налаштуваннях на форму вибрати тип підключення (LAN TCP , LAN UDP , Інтернет , Off) .
Інші теми активуються використання глобальних змінних в класах ” EhouseTCP ” або ” ehousecommunication ” .

Додаток використовує візуалізацію відповідно до EHouse стандартних , , Отримані від додатків CorelDraw за допомогою скриптів, які дозволяють:

  • Імпорт EHouse конфігурації системи
  • Створення графічних об'єктів вручну або за допомогою сценарію
  • Експорт даних для всіх методи візуалізації для всіх панелей , веб-браузерів , ПК , Таблетки , смартфонів і інших систем

Це обговорюється далі в статті:
” створення графічної візуалізації та керування EHouse розумний будинок ” .
Програмне забезпечення візуалізації на основі масштабованої векторної графіки (SVG) .
Цей метод дозволяє ” без втрат ” кривих витяжки , текст , прості геометричні фігури , незалежно від розміру розширення , Екран зсув , і т.д. .
Це не було б можливо за допомогою тлі графічних зображень, таких як JPG , растрові зображення , і т.д. . .
Програмне забезпечення візуалізації були оптимізовані, щоб зменшити використання процесора і графічного процесора час при роботі онлайн , у зв'язку з великою кількістю даних для обробки . Графічні зображення кешуються і розділений на відповідні сигнали управління та обробляються при отриманні статусу контролера , і відображаються на екрані набагато швидше, від візуалізації кеша кожного контролера .

Це дозволяє:

  • значне скорочення оброблюваних даних для візуалізації із зображенням змін
  • значно зменшити мерехтіння при зміні проектованого зображення
  • значне зниження навантаження центрального процесора і візуалізації даних
  • Використання багато ” слабкіше ” , менш ефективним і менш дорогим апаратним , графічні панелі , Таблетки , Панель управління , і т.д. . , при збереженні комфортної роботи
  • зниження енергоспоживання, що особливо важливо в батареї і мобільного устаткування і стаж роботи від батареї

Це питання обговорюється зі скріншотами в статті:
” Графічна візуалізація та інтелектуального управління будинком в Java ”

EHouse4Java зв'язку з контролерами домашня автоматизація

eHouse1 Під керівництвом PC

У цій версії програми EHouse . EXE працює як приймач статус RS – 485 (з перетворювачем RS – 485/RS – 232) і передає стан без будь-яких змін на цих двох методів не стикаються один з одним:

  • EHouse . EXE працює як TCP / IP сервер відповідає на запити про статус панелі , посилаючись подальшого підключення панелей і підтримувати їх, поки відключений з якоїсь причини . Цей метод особливо цінний з спроби встановити зв'язок із викличної панеллю TCP / IP через мережу , таких як Інтернет, де це не вдається отримати статус UDP .
  • EHouse . EXE посилає широкомовна протокол без встановлення з'єднання UDP для будь-якого числа клієнтів в локальній мережі , Intranet . Це означає, що , , Що панель не підключається до сервера , але слухає широкомовні повідомлення від ” EHouse . ехе ” застосування . Таким чином, незалежно від того, скільки одержувачів панелі статусу не змінює навантаження на мережу , або комп'ютер, на якому ” EHouse . ехе ” Додаток працює . На жаль, це неможливо або дуже важко передати UDP трансляції через Інтернет, так і в цьому випадку перший метод слід використовувати .

eHouse1 Під керівництвом CommManager

У цій версії , CommManager приймає вхідні статуси через RS – 485 (від eHouse1 контролери) і передає стан без будь-яких змін на цих двох методів не стикаються один з одним:

  • CommManager працює як TCP / IP сервер відповідає на запити про статус панелі , посилаючись подальшого підключення панелей і підтримувати їх, поки відключений з якоїсь причини . Цей метод особливо цінним спроби встановити зв'язок з панеллю поза локальної мережі , таких як Інтернет, де це не вдається отримати статус UDP .
  • CommManager посилає передач (з'єднання) UDP-протоколу для будь-якого числа клієнтів в локальній мережі , Intranet .
    Це означає, що , , Що панель не підключення до сервера TCP CommManager , але слухати повідомлення, що передаються від CM . Таким чином, незалежно від того, скільки одержувачів панелі статусу , це не змінює навантаження на мережу або використання процесора CommManager . Мовлення UDP мовлення не представляється можливим , або в значній мірі перешкоджає через Інтернет, тому в даному випадку перший метод слід використовувати .

Ethernet EHouse (eHouse4Ethernet)

У цій версії контролерів Ethernet: CommManager , EthernetRoomManager , і т.д. . , самостійно відправити свій статус двома способами: , не стикаються один з одним:

  • Кожен контролер працює як TCP / IP сервер відповідає на запити про статус панелі , посилаючись подальшого підключення панелей і підтримувати їх, поки відключений з якоїсь причини . Цей метод особливо цінним спроби встановити зв'язок із панелями поза локальної мережі , таких як Інтернет , де це не вдається отримати статус UDP .
    Однак , у разі декількох контролерів Ethernet необхідно підтримувати з'єднання з TCP / IP кожен контролер , щоб підняти повне стан системи безпосередньо з контроллера . Це може призвести до збільшення навантаження на панелі управління процесором , Тяжкість проблеми, пов'язані з комунікацією . У цьому випадку , бажано розміщувати на застосування боку LAN , , Який отримує статус місцевих UDP , і вперед по TCP / IP через Інтернет . Це зрозуміли і обговорюються в додатку eHouse4Java , , Який дозволяє це рішення . Недоліком є ​​необхідність підтримання додаткового обладнання, яке виконує ці функції .
  • Кожен контролер посилає широкомовна (з'єднання) UDP-протоколу для будь-якого числа клієнтів в локальній мережі , Intranet . Це означає, що , , Що панель не підключається до контролера сервера TCP , але слухати повідомлення, що передаються від всіх контролерів . Таким чином, незалежно від того, скільки одержувачів панелі статусу не змінює навантаження на мережу або використання ЦП контролера . Мовлення UDP пакетів неможлива або сильно перешкоджають через інтернет , тому в даному випадку перший метод слід використовувати . Можливість передачі UDP іноді можливо в залежності від типу посилання , Вистава . Іноді можна отримати трансляції UDP через VPN правильно налаштувати зв'язок , Однак , навіть у цій ситуації , Пакети можуть бути загублені , у зв'язку з відсутністю механізмів безпеки для UDP . Невірні дані автоматично скасовується за допомогою програмного забезпечення EHouse панелей для не контрольна сума (контрольна сума)