-
-
-
-
URL copied!
Сучасні технології IoT так стрімко інтегруються в наше повсякденне життя, що зараз вже нікого не здивуєш системою «розумний дім». Проте не все так просто, як може здаватися на перший погляд: незважаючи на широку популярність систем smart home, досі не існувало уніфікованого рішення, яке б дозволяло керувати пристроями (комплексними компонентами) від різних виробників. Команда розробників GlobalLogic створила своє програмне забезпечення Gateway SDK (software development kit), яке забезпечує керування комплексними компонентами розумного дому.
Реалізація
GL SmartHome Cloud Solution — це внутрішня розробка львівського офісу компанії, готове продуктове рішення, що може застосовуватись для автоматизації роботи багатьох функцій (керування опаленням, світлом, перевірка рівня забрудненості повітря і т. д.) сучасного будинку (квартири) чи навіть цілого розумного міста.
Наразі рішення представлене у вигляді функціонального демостенду: це міні-будинок, обладнаний новітнім устаткуванням з використанням провідних IoT-технологій (Java, Docker, реляційні бази даних).
Smart-home-платформа складається з під’єднаних до неї приладів, що раніше не взаємодіяли між собою в одному середовищі. Платформа доповнена референс-додатком для Android, що дозволяє керувати та/або слідкувати за усіма елементами розумного будинку віддалено, використовуючи смартфон чи комп’ютер. Рішення, яке розроблялося для компанії США, пройшло всі необхідні сертифікації у цій країні. На сьогоднішній день продукт представлений на світовому ринку. Вихід на український ринок не планується.
Як функціонує рішення та які прилади підтримуються хмарною платформою?
Унікальність рішення полягає в тому, що воно об’єднало керування приладами різних виробників в одну систему через модуль IFTTT (If This Then That). GL SmartHome Cloud Solution підтримує 55 приладів, і їх кількість постійно збільшується. Серед локальних приладів є кольорові лампи Philips, термостат Honeywell, камера Nest та ін. Ми вибирали найпопулярніші прилади, які доступні в США. Також ми використовували Amazon Web Services, інноваційні апаратні платформи (ARM Cortex: Raspberry PI 2-3, Qualcomm Dragonboard 410, x86-64: Any) та стеки з’єднання IoT. Віддалений доступ користувача зі з’єднаними між собою приладами розумного будинку здійснюється через такі бездротові інтерфейси, як Z-Wave, Zigbee та протоколи Wi-Fi.
Рішення підтримує високе навантаження — більше 50 000 одночасних запитів на cloud для зміни налаштувань доданих приладів.
GL SmartHome складається з референс-gateway, cloud-рішення з використанням Amazon-сервісів, референс-Android-додатка та демостенду розумного будинку з реальними приладами.
Яка архітектура Cloud-рішення?
Як вже було зазначено, Cloud-рішення побудоване за допомогою Amazon-сервісів, серед яких:
- EC2 (Amazon Elastic Compute Cloud) — задає інфраструктуру серверам;
- ECS (Amazon EC2 Container Service) — використовує докер для централізованого об’єднання контейнерів в кластери і безпосереднього управління ними;
- RDS (Amazon Relational Database) — окремий сервіс для баз даних, де зберігаються акаунти, користувачі та сценарії;
- VPC (Amazon Virtual Private Cloud) — сервіс для управління мережами, що створює приватні мережі (із закритим доступом);
- IoT — сюди входить MQTT брокер, який ми використовуємо;
- S3 (Amazon Simple Storage Service) — сховище з різними розділами (buckets), у яких ми створюємо свої дані — сертифікати. До прикладу, ми використовуємо firmware для gateway як storage;
- SQS (Amazon Simple Queue Service) — сервіс, який формує черги для Java-додатків;
- SES (Amazon Simple Email Service) — мейл-сервіс від Amazon;
- SNS (Amazon Simple Notification Service) — сервіс для сповіщень.
Всі використані сервіси Amazon і Java-додатки ми поділили на 3 кластери:
- Кластер з додатками для web і API, завдяки яким елементи розумного будинку є доступними через зовнішню мережу.
- Logic-кластер, який поділяється на:
- Time Server — відповідає за виконання сценаріїв з попередньо визначеним часом;
- Notification service — відповідає за push-notifications, e-mail, SMS;
- Gateway to cloud server — з’єднує gateway з cloud-ом. Він розділений на 2 додатки: пересилання MQTT-повідомлень, керування повідомленнями у черзі;
- Rule engine — відповідає за створення та виконання. Він теж поділяється на 2 додатки, за тим самим принципом, що і gateway to cloud server.
- Кластер адаптерів, які з’єднують пристрої через наш cloud з cloud-ом виробників девайсів. Кластер складається з чотирьох компонентів: adapter, consumer, publisher та четвертий компонент для черги. Adapter опрацьовує повідомлення, які надсилаються в cloud. Коли повідомлення повертається з відповіддю, publisher закидає повідомлення в чергу, а consumer бере їх з черги і опрацьовує.
Сервіси Amazоn були обрані для реалізації проекту тому, що вони стабільні, є адаптивними та гнучкими. Крім цього, AWS вибудували надзвичайно якісну безпеку інфраструктури, як фізично так і у всесвітній павутині, а це велика перевага коли йдеться про контроль доступу до вашої домівки.
Як інтегрована Amazon Alexa?
Також ми додали Amazon Alexa, яку запрограмували для взаємодії з нашим cloud-ом і керування розумним будинком через той самий cloud.
Amazon Alexa Integration
Які ще референс-компоненти входять до комплексу?
Окрім cloud-рішення, було також створено два компоненти, що допомагають швидко інтегруватися з уже розробленим cloud API.
Перший компонент — це програмне забезпечення Gateway SDK на основі Raspberry PI 2/3, що здійснює зв’язок між локальними пристроями, які комунікують, використовуючи бездротові інтерфейси ZigBee, Z-Wave, Wi-Fi, та здійснюють двосторонній зв’язок з cloud-ом, застосовуючи MQTT-протокол.
Стандартів щодо цього зараз практично не існує, в цьому і полягала основна складність — розробити уніфіковане рішення, яке дозволить керувати пристроями від різних виробників. Тому і було вирішено створити своє програмне забезпечення — Gateway SDK. Воно передбачає такі можливості:
- керувати пристроями, що працюють використовуючи бездротові інтерфейси ZigBee, Z-Wave, Wi-Fi;
- отримувати команди з мобільного додатку через cloud, використовуючи MQTT-протокол;
- виконувати IFTTT-сценарії, коли немає зв’язку з cloud;
- надсилати повідомлення про зміну стану девайсів на мобільний додаток.
Другий компонент — це мобільний демододаток на основі Android, який демонструє функціональні можливості cloud API та показує, як правильно ними користуватися.
На додачу до переліченого, розробники створили документацію, яка дозволить іншим виробникам розробляти власне програмне забезпечення, мобільні додатки та інше, використовуючи cloud-рішення від GlobalLogic.
Результати і плани
Над рішенням протягом 5 місяців працювали 30 експертів з різних технологій. Зараз роботу GL SmartHome Cloud Solution демонструють потенційним замовникам та під час офісних турів. Ми не можемо сказати, що це кінець проекту, він знаходиться в нас на саппорті і з досвіду — ми постійно розвиваємо свої ж ідеї. Тому якщо вам цікаві технології, починаючи від Embedded і закінчуючи Data Science, — долучайтесь до нашої команди!
Софія Соснова, QA Lead, Consultant, GlobalLogic
Top Insights
Python: чому вивчати та з чого почати?
InsightsSoftwareAutomotiveCommunicationsConsumer and RetailFinancial ServicesHealthcareManufacturing and IndustrialMediaTechnologyТонкощі CV або Як скласти та куди надіслати,...
HRAutomotiveCommunicationsConsumer and RetailFinancial ServicesHealthcareManufacturing and IndustrialMediaTechnologyCI/CD для JS розробників. Частина перша – теорія
DevelopmentSoftwareAutomotiveCommunicationsConsumer and RetailFinancial ServicesHealthcareManufacturing and IndustrialMediaTechnologySoft and Hard Skills: Що важливіше? Розповідь одного...
HRAutomotiveCommunicationsConsumer and RetailFinancial ServicesHealthcareManufacturing and IndustrialMediaTechnologyТОП автори
Категорії блогів
Давайте співпрацювати
Схожі теми
Мережеві основи
Основні поняття мереж Мережі забезпечують зв'язок між комп'ютерами, пристроями та користувачами навіть на великих відстанях. Вони є основою для спільної роботи, комунікації та обміну ресурсами. Мережа — це система, у якій два або більше комп'ютерів та інших пристроїв з'єднані між собою для обміну даними та ресурсами. Вони можуть бути локальними (LAN), розширеними (WAN), бездротовими (Wi-Fi) … Continue reading SmartHome — рішення для керування пристроями від різних виробників →
Більше
Основи операційних систем
Windows, Linux, macOS: порівняння та особливості У світі комп'ютерів три операційні системи відіграють ключову роль: Windows, Linux та macOS. Кожна з цих систем має свої унікальні особливості та призначення, що робить їх популярними серед різних категорій користувачів. У цій статті ми розглянемо ці три операційні системи, їхні переваги та особливості. Windows Windows — найпопулярніша операційна … Continue reading SmartHome — рішення для керування пристроями від різних виробників →
Більше
Основи інформатики та програмування
Вступ до інформатики та IT-сфери Інформатика та технології інформаційної обробки є дверима в швидкоплинну та захоплюючу сферу — сферу інформаційних технологій (IT). У світі, де відсутність доступу до інформації може виявитися прогресивною перешкодою, розуміння основ інформатики та IT-сфери стає критичним для кожної людини. Що таке інформатика та IT-сфера? Інформатика — це наука про обробку та … Continue reading SmartHome — рішення для керування пристроями від різних виробників →
Більше
Як зберігати і підвищувати власну продуктивність в ІТ
Артур Мицко, Lead Software Engineer, GlobalLogic У компанії Globallogic я пройшов шлях від С++ trainee до Lead Software Engineer. Як зазвичай буває, коли людина приходить в ІТ-компанію вперше — все навколо нове та цікаве, ти не помічаєш як летить час. Чесно кажучи, в перші роки я не сильно то і відпочивав, переважно на свята. Це, … Continue reading SmartHome — рішення для керування пристроями від різних виробників →
Більше
Як покращити ресурсний стан через оточення
Катерина Васильєва, Senior HRBP, GlobalLogic Ресурсний стан як поняття, яке використовується в психології, медицині, спорті та інших галузях, описує психофізіологічний стан людини, який характеризується рівнем її енергії, витривалості, здатності до праці та концентрації уваги. Відповідно, ресурсний стан впливає на різні аспекти життя людини, і визначається різними чинниками, як то рівень фізичного здоров'я, ступінь стресу або … Continue reading SmartHome — рішення для керування пристроями від різних виробників →
Більше
How does SDV change the automotive industry and what is the role of Ukraine in these changes
Author: Sergii Naida, Vice President, Engineering, GlobalLogic Ukraine Software-defined vehicles (SDVs) are changing the automotive industry and defining new industry standards. SDV Cloud Framework, the infrastructure concept developed by the GlobalLogic Ukraine team, is an important innovation in the automotive sector. It aims to create cloud infrastructure to optimize automotive software development and help to … Continue reading SmartHome — рішення для керування пристроями від різних виробників →
Більше
Як стати .NET розробником. Перші кроки та поради
Олексій Глембицький, Senior Software Engineer, GlobalLogic Мене звати Глембицький Олексій, я .NET розробник в компанії GlobalLogic, а також проводжу вебінари та викладаю курси по мові програмування С#. І в цій статті я би хотів поділитись порадами, які допомагають моїм студентам опанувати мову програмування С# та стати .NET-розробниками. Про мову програмування C# та платформу .NET C# … Continue reading SmartHome — рішення для керування пристроями від різних виробників →
Більше
Як покращити презентації
Денис Братчук, Engineering Director, GlobalLogic Майже кожен з нас час від часу виступає із презентаціями чи доповідями, використовуючи як ілюстрацію слайди, створені в популярних офісних програмах, на кшталт PowerPoint або Google Slides. Менеджери проєктів створюють звіти про хід виконаних робіт, інженери презентують новітні технологічні рішення, керівництво звітує про досягнення фінансових цілей, а менеджери з продажів … Continue reading SmartHome — рішення для керування пристроями від різних виробників →
Більше
Share this page:
-
-
-
-
URL copied!