Open Home Automation Bus (openHAB) — це програмне рішення, розроблене на Java, яке з'єднує компоненти для автоматизації будівель від широкого кола виробників в єдиній платформі, незалежно від виробника та протоколу. openHAB має багато співрозробників. На цей час розроблено друге покоління платформи, заснованої на спеціалізованому фреймворку Eclipse SmartHome. c't Розробник: Heimautomatisierung mit openHAB: neue Bindings und Ausblick in die Zukunft [Домашня автоматизація з openHAB: нові прив'язки і погляд у майбутнє], 2014-11-25

OpenHAB 2 зосереджується на комфорті користувача під час налаштування та конфігурації. Для цього було впроваджено численні вдосконалення порівняно з версією 1.

openHAB є незалежною операційною системою і може бути розширена шляхом додавання додаткових прив'язок до додаткових технологій / протоколів. OpenHAB розроблений з відкритою ліцензією Eclipse і має відкритий код. Інтерфейси користувача підтримують веббраузери, системи Android та Apple iOS.

Підтримка та поширення Видатні офіційні прихильники включають KNX, EnOcean, Insteon, HomeMatic і Z-wave. На основі Eclipse SmartHome вийшли перші комерційні продукти для масового ринку, як у Deutsche Telekom з QIVICON і Qbox COQON, які використовують Eclipse SmartHome як програмну основу для своїх шлюзів.

Архітектура

Проект openHAB ділиться на openhab-runtime: це відповідає серверу, який виконує дії. openhab-designer: це зручний інтерфейс налаштування, заснований на Eclipse.

Середовище виконання openHAB OpenHAB Runtime — це пакет OSG і вимагає JVM. На основі OSGi передбачена високомодульна архітектура, яка дозволяє додавати або видаляти функції безпосередньо під час виконання.

Коммунікація

openHAB має два внутрішні канали зв'язку: Шина асинхронних подій Репозито́рій елементів

Шина подій Шина подій є основним сервісом openHAB. Всі пакети, що не мають статусу, інформують інші групи про стан подій. Всі прив'язки протоколу (які створюють фізичні посилання на обладнання) повинні зв'язуватися через цю шину подій. Технічною базою є служба OSGi EventAdmin.

Репозито́рій елементів Для функцій, пов'язаних зі статусом, openHAB пропонує репозиторій елементів, який підключений до шини подій і відстежує поточний стан елементів. Таким чином, репозиторій елементів може використовуватися для запиту поточного стану елемента, наприклад для відображення у візуалізації, для обробки в логіці або для служби збереження. Таким чином, сховище позицій не дозволяє пов'язаним службам зберігати самі статуси і робить їх доступними в центральній службі.

Sitemap openHAB має загальноприйнятий інтерфейс користувача (UI), так званий sitemap. Sitemap — це дерево віджетів, які визначають різні сторінки та вміст інтерфейсу користувача. Віджетами можуть бути елементи, що представляють поточний стан або перемикачі або графіки.

Постачальники UI пункту

openHAB дизайнер openHAB дизайнер — це додаток Eclipse RCP для конфігурації середовища виконання openHAB. Він надає редактор необхідних конфігураційних файлів і включає в себе перевірку синтаксису, автозаповнення та контекстні маркери. Для створення автоматизації використовуються логічні правила, які базуються на технологіях Xtext, xBase, Quartz (графік управління) і Joda Time (час і дата обчислення)Joda Time , на сайті joda-time.sourceforge.net, доступний 8-м..

openHAB дизайнер вважається застарілим і був замінений розширенням коду Visual Studio.

Підтримувані технології

Інтерфейси

Інтерфейси користувача Paper UI — вебінтерфейс налаштування та налаштування Basic UI — вебінтерфейс Клієнт Apple iOS Android-клієнт — HABDroid — це інтерфейс користувача з відкритим вихідним кодом для openHAB Клієнт Windows 10 HABPanel — Панелі інструментів CometVisu Amazon Alexa

NFC Клієнт Android HABDroid вміє описувати і читати теги NFC. Таким чином, шляхом сканування NFC, може бути виконана дія.

Консоль OSGi

openHAB може працювати через консоль OSGi. Огляд OSGi , на openhab.org, доступ до 8-го. Це дозволяє командам надсилати до шини подій для перемикання елементів або стану запиту. ---openHAB commands--- openhab send <item> <command> – sendet einen Befehl an ein Item (z. B. Licht ein) openhab status <item> – zeigt den aktuellen Status eines Items openhab say <sentence to say> – spricht eine Nachricht mittels der TTS Speech-Engine

Голосове управління За допомогою мобільного додатку HABDroid можливе керування голосом. Він використовує Google Speech Engine. Крім того, до openHAB можна підключити голосову службу Amazon (Alexa) з Amazon Echo або Amazon Dot. Це робиться емуляцією HUE або Alexa Skill.

Також підтримуються Google Home або Google Assistant Офіційний Google Assistant Integration для openHAB Оголошення про випуск Google у форумі openHAB .

Консоль обміну миттєвими повідомленнями XMPP

Консоль календаря Google Інший спосіб задання команд openHAB — запланувати відповідний запис у календарі Google або CalDav (наприклад, ownCloud).

REST API Інтерфейс RESTful забезпечує відкритий інтерфейс для openHAB для зв'язку з іншими системами.

myopenHAB Хмарні служби myopenHAB дозволяють віддалений доступ і прямі push-повідомлення в програмі Android (HABDroid) без активації порту або записів DynDNS.Ласкаво просимо до myopenHAB , на myopenhab.org, доступ до якого надійшов 8. Сервіс IFTTT інтегрована в myopenHAB.

MQTT Використовуючи прив'язку MQTT, статуси елементів можна обмінювати між MQTT і openHAB.

openHAB виграла IoT Challenge 2013 і нагороду вибору герцога 2013 на JavaOne. Він був номінований на премію JAX Innovation Award 2014 і став переможцем «Народного вибору» на премії Postcapes IoT 2014/15. openHAB має одну з найбільших команд розробників з відкритим кодом у світі.

Посилання

openhab.org  — офіційний сайт openHAB eclipse.org/smarthome  — Офіційний сайт Eclipse SmartHome openHAB Dokumentation  — Офіційна документація openHAB 2 openHAB Community  — Форум підтримки

Примітки