Разработка системы умного дома

Система умного дома включает в себя устройство-контроллер, мобильное приложение под iOS и Android, а также облачный сервер на основе AWS. Поддерживает устройства ZigBee.
КЕДР Solutions разработала систему умного дома, поддерживающую устройства ZigBee. Команда спроектировала устройство-контроллер, написала мобильное приложение и создала облачный сервер для системы.

Разработка системы умного дома

Система, состоящая из голосового помощника и умной кофемашины, еще не может называться умным домом. Таковой является система, способная контролировать все бытовые приборы в доме – от дверного замка до крана в ванной.

Системы умного дома облегчают повседневную жизнь. Простым нажатием кнопки в смартфоне можно включить и выключить свет, задернуть шторы и переключить канал на телевизоре. А различные датчики позволяют следить за состоянием дома и коммуникаций.

Высокие технологии становятся все доступнее. Сейчас даже домохозяйства со средним достатком могут позволить себе решения для умного дома. В данном проекте заказчик заключил с нами контракт на разработку системы умного дома, совместимой с большинством популярных на рынке умных приборов и устройств.

Запрос

Заказчик поручил команде КЕДР Solutions спроектировать систему умного дома, совместимую со сторонними устройствами, использующими протокол ZigBee.

Мы также должны были разработать мобильное приложение для управления системой и создать облачный сервер.

Решение

Схема стандартного умного дома, состоящего из управляющего устройства, сервера, контроллера и периферийных устройств.
Стандартная система умного дома включает в себя управляющее устройство (в данном случае – смартфон), сервер, контроллер (hub) и различную периферию: электрические лампочки, умные замки, систему кондиционирования и т.д.

Разработка контроллера (hub)

Нашей первой задачей была разработка контроллера, который служит маршрутизатором между облаком и периферией системы. Он передает данные о состоянии системы с датчиков на приложение и команды с приложения на исполнительные узлы.

Контроллер выполнен на базе микроконтроллера ESP32-S2, отличающегося высокой производительностью и большим объемом памяти. Он отвечает за бизнес-логику устройства. В нем также есть встроенный Wi-Fi модуль для доступа к облаку через интернет.

Кроме того, в контроллере есть модуль Quectel EC21-E для доступа в интернет через сотовую сеть связи. Он может использовать как стандарт LTE (4G), так и переключаться на 3G и 2G. Это позволяет получать информацию с устройства на смартфон и отправлять на него команды, даже если сеть 4G недоступна.

Микроконтроллер подсоединен к Bluetooth-модулю на базе nRF52840. Он позволяет устройству связываться с умными датчиками и исполнительными механизмами. Модуль получает данные с периферийных устройств и передает их на МК ESP32-S2, который обрабатывает их и отправляет в облако.

Разработка прошивки

Команда написала прошивку для микроконтроллеров ESP32-S2 и nRF52840. На данный момент прошивка, разработанная для nRF52840, позволяет ему поддерживать устройства ZigBee. Однако в дальнейшем заказчик планирует разработать прошивки, которые позволят контроллеру поддерживать обмен данными с помощью BLE и выступать шлюзом для сети OpenThread.

Разработка мобильного приложения

Наша команда программистов создала кроссплатформенное мобильное приложение под iOS и Android, через которое пользователи могут управлять умным домом и получать данные с датчиков.

Облако AWS

Наконец, КЕДР Solutions создала облачный сервер на основе AWS, который позволяет контроллеру и приложению обмениваться данными через интернет. Так пользователи могут управлять системой из любого места, где есть подключение к интернету.

Периферия

Заказчик пожелал, чтобы система была совместима со следующим перечнем устройств для умного дома.
Умные лампочки Philips Hue и TRÅDFRI.
Умные лампочки Philips Hue, Philips Hue Color и TRÅDFRI
Коллаж с изображением умной розетки Innr и умного выключателя Aqara.
Умные розетки Innr и умные выключатели Aqara
Изображение термостата Zen для умных домов.
Термостат Zen (версия ZigBee)
Фотография умного замка Yale Assure.
Умный замок Yale Assure
Коллаж с изображением моторов для раздвижных штор Aqara.
Моторы для раздвижных штор
Коллаж с изображением датчиков для умного дома: датчика движения от Philips, детектора дыма и протечек от Develco.
Детектор дыма и протечек от компании Develco, а также датчик движения Philips Hue
Однако система умного дома поддерживает и другие устройства, использующие протокол ZigBee.
Выполненные работы

Разработка встроенного аппаратного обеспечения

Мы создали устройство-контроллер для системы умного дома. Для этого команда выполнила следующие задачи:


Написание прошивки

Команда разработала прошивку для использованных в плате микроконтроллеров.

  • ESP32-S2;
  • nRF52840.

Разработка ПО

  • Мы настроили сервис AWS IoT.
  • Команда разработала кроссплатформенное мобильное приложение для управления системой.
              Использованные технологии
              • Бизнес-логика устройства была реализована на микроконтроллере ESP32-S2 со встроенным Wi-Fi модулем, который отвечает за связь с облачным сервером.
              • Мы использовали модуль Quectel EC21-E для доступа в интернет по сотовой связи.
              • Для взаимодействия с периферией был использован Bluetooth-модуль nRF52840.
              • Для создания принципиальной схемы и проектирования печатной платы команда использовала Altium Designer.
              • Прошивка для микроконтроллеров была написана на C++ с помощью Visual Studio Code.
              • Кроссплатформенное приложение было создано на C++ с помощью фреймворка Qt.
              • Для подключения мобильного приложения к облаку команда использовала AWS Mobile SDK для Android и iOS.

                              Итоги

                              КЕДР Solutions создала систему умного дома, состоящую из мобильного приложения для управления ею, облачного сервера, который позволяет управлять системой через интернет, и устройства-контроллера, которое обеспечивает взаимодействие между мобильным приложением и периферийными устройствами.

                              На данный момент система совместима только с умными устройствами ZigBee. В будущем заказчик планирует добавить в контроллер поддержку BLE и OpenThread. Для этого команде предстоит создать соответствующие версии прошивки и расширить функционал приложения. Нажатием на кнопку пользователи смогут переключаться между ZigBee, BLE и OpenThread. Затем приложение загрузит соответствующую прошивку из облака на контроллер. Это позволит контроллеру поддерживать устройства ZigBee, BLE или OpenThread.
                              Поддерживает
                              Устройства ZigBee

                              Управление
                              Через мобильное приложение iOS и Android