|
@@ -0,0 +1,262 @@
|
|
|
+
|
|
|
+# Умный дом Sber теперь полностью автономный. Из чего он состоит?
|
|
|
+
|
|
|
+SberDevices сегодня перезапустили собственную платформу умного дома, отказавшись от сторонних инфраструктурных решений и сделав ее полностью автономной. Также с сегодняшнего дня в продажу поступило первое устройство умного дома Sber нового поколения – самая популярная лампа А60.
|
|
|
+
|
|
|
+Анонсировали разработку новой инфраструктуры для своей платформы умного дома полгода назад. Основной задачей было обеспечить бо́льшую надежность работы: элементы сторонних поставщиков ограничивали гибкость в развитии и создавала ненужные риск
|
|
|
+
|
|
|
+### Что умеет и из чего состоит платформа умного дома
|
|
|
+Если коротко — **платформа умного дома умеет отправлять на умные устройства Sber и девайсы партнёров команды и получать от них ответ. На первый взгляд, довольно просто.**
|
|
|
+
|
|
|
+Более подробная схема:
|
|
|
+
|
|
|
+
|
|
|
+С пользователями взаимодействуе идёт с помощью самих конечных устройств, управляющих устройств и нескольких мобильных приложений.
|
|
|
+
|
|
|
+В бекенде платформы — более 60 микросервисов, составляющих ядро платформы: **сервис интеграции, сервис обновления прошивки, сервис подключения устройств, сценарный движок, сервис голосовых команд, сервис аналитики и многие другие.**
|
|
|
+
|
|
|
+Бекенд может взаимодействовать с облаками партнёров и программируемыми контроллерами: транслировать команды, которые пользователи отдали через приложения и устройства Sber, в партнёрское облако или на контроллер, и получать оттуда статус. С помощью такого взаимодействия пользователи получают возможность управлять через умный дом Sber не только устройствами нашего производства, но и сторонними девайсами.
|
|
|
+
|
|
|
+### Умные устройства Sber
|
|
|
+Платформа умного дома не обязательно должна включать устройства своего производства: вы вполне можете обойтись интеграцией с партнёрами и управлять только сторонними лампами, розетками и другими девайсами.
|
|
|
+
|
|
|
+ В дополнение к партнёрским девайсам, Sber производит устройства — и старается сделать их одними из лучших на рынке. Для этого в их команде есть инженеры, которые проверяют аппаратные компоненты, выбирают и инспектируют фабрики, создают процедуры и стенды для приёмочных испытаний.
|
|
|
+
|
|
|
+Вот как (очень укрупнённо) выглядит процесс производства девайсов:
|
|
|
+
|
|
|
+1. **Продуктовая команда делает бизнес-анализ и определяет, какое устройство, с какими характеристиками и по какой цене нужно произвести.**
|
|
|
+
|
|
|
+2. **Инженеры помогают выбрать несколько фабрик, которые могут изготовить устройство в соответствии с нашими требованиями. Фабрики инспектируют, у них заказываются тестовые партии устройств.**
|
|
|
+
|
|
|
+3. **Устройства из тестовой партии тщательно тестируются. Например, на картинке ниже — сферический фотометр. Внутренняя часть этого шара оснащена датчиками, с помощью которых проверялись световой поток и равномерность освещения прототипов ламп. Также у тестовых устройств проверяются электрические характеристики, температуры работы и многие другие параметры.**
|
|
|
+
|
|
|
+
|
|
|
+4. **Как правило, даже самые лучшие образцы не устраивают нас полностью, поэтому наши инженеры дорабатывают схемотехнику и конструкцию устройства.**
|
|
|
+
|
|
|
+5. **Фабрика, сделавшая лучшие устройства и готовая внести необходимые нам доработки, получает заказ на производство. Пока она готовит производственные линии, они тоже не сидят без дела — нужно подготовить протоколы для приёмки девайсов.**
|
|
|
+
|
|
|
+**Например:** у всех устройств обязательно проверяется базовая функциональность. У ламп это: включение, выключение, изменение цветов и непрерывная работа в течение заданного времени. А ещё мы разработали программу самодиагностики — она встраивается прямо в прошивку и проверяет, подключены ли к плате все необходимые компоненты. В партии ламп, которая сейчас поступила в продажу, этот тест помог отсеять несколько десятков неправильно собранных устройств.
|
|
|
+### Прошивка устройств
|
|
|
+
|
|
|
+Чтобы производимые на фабриках девайсы стали умными, недостаточно железа. Нужна прошивка — её тоже пишут инженеры Sber.
|
|
|
+
|
|
|
+На прошивке нужно остановиться чуть подробнее, потому что этот компонент платформы по-своему уникален. На рынке России крайне мало поставщиков облачных умных домов, самостоятельно разрабатывающих своё системное ПО, а не использующих проприетарные версии. Это не только вопрос престижа: прошивка определяет, из какого облака устройство будет получать команды, поэтому без неё говорить о независимой инфраструктуре нельзя.
|
|
|
+
|
|
|
+Проприетарная прошивка накладывает и многие другие ограничения: можно ли обновить устройство «по воздуху», можно ли усилить алгоритм шифрования и прочее. Самостоятельно разрабатывая прошивку они получают бо́льшую гибкость и можем выбирать решения, лучшие для наших пользователей.
|
|
|
+
|
|
|
+Несколько примеров того, что уже удалось реализовать, используя это преимущество:
|
|
|
+
|
|
|
+- Лампа и другие устройства используют только российскую облачную инфраструктуру.
|
|
|
+
|
|
|
+- Используется стойкий криптографический протокол на уровне приложения после подключения к лампе по BLE — нативный механизм шифрования BLE обладает уязвимостью и уже не может считаться надёжным. Кроме того, внедрена криптографическую подпись в образ прошивки.
|
|
|
+
|
|
|
+- Модуль безопасного OTA-обновления не только позволяет дистанционно обновлять ПО, но и защищает лампу в момент инсталляции прошивки: даже если пользователь выключит питание лампы во время обновления (а такое, увы, не редкость), она не выйдет из строя.
|
|
|
+
|
|
|
+- У нас появился таймер времени выключения: теперь лампа знает, когда она выключалась в последний раз. Это помогло победить проблему «спонтанного пейринга», когда лампа переходила в режим подключения по пяти включениям и выключениям подряд, не различая при этом, что эти переключения случались с разницей в несколько часов. Что важно — проблему решили установкой простейшей RC-цепочки и изменениями прошивки, без впаивания аппаратного таймера и заметного удорожания устройства.
|
|
|
+
|
|
|
+Ещё одна **ключевая особенность** прошивки — возможность переиспользования. Она состоит из трёх слоёв: слой с приложением для управления устройством, слой IoT-платформы и физический слой с реализацией радиомодулей и хранилищами. Последние два уровня — универсальные. Они не меняются от устройства к устройству, кастомизируется только слой приложения. Это будет экономить нам время при выпуске следующих девайсов.
|
|
|
+
|
|
|
+А вот так выглядит разработка прошивки. Слева — лампочка, но на открытой плате, на которой собраны все модули и чип, его можно извлекать и перепрошивать. Если присмотреться, то можно увидеть и светодиоды лампы. Справа — уже почти готовая лампа с портом для перепрошивки.
|
|
|
+
|
|
|
+
|
|
|
+### Сервис интеграции
|
|
|
+Это ещё одна очень важная часть платформы.Производство идёт не все категории устройств, которые нужны нашим пользователям, и готовы делиться технологиями, которые полезны нашим партнёрам. Для взаимодействия с партнёрскими облаками разработана подсистема интеграции — она позволяет подключать к платформе умного дома Sber девайсы других производителей и управлять ими так же, как и нашими собственными устройствами: голосом или через интерфейс в приложении и устройствах Sber.
|
|
|
+
|
|
|
+А ещё она не решает за пользователя, как ему организовывать свой дом, поэтому эта подсистема умеет работать с разными технологическими стеками: Wi-Fi, Zigbee, Bluetooth, MQTT.
|
|
|
+
|
|
|
+**Взаимодействие строится на базе открытого API** — любой вендор может реализовать интеграцию и дать своим пользователям возможность использовать все технологии нашей платформы: множество поверхностей, голосовое управление, сценарный движок. С нами уже интегрированы больше десятка производителей, включая Aqara, Digma, HIPER и Yeelight.
|
|
|
+
|
|
|
+Для компаний-интеграторов и DIY-энтузиастов, автоматизирующих дома с помощью программируемых контроллеров Wiren Board и LogicMachine, они максимально упростили подключение к облаку Sber: разработанное приложение можно установить на контроллер — и оно обеспечит трансляцию команд от умного дома Sber на контроллер и в обратном направлении. После этого даже проводными устройствами можно будет управлять голосом и через интерфейс устройств и приложений от Sber.
|
|
|
+
|
|
|
+### Поверхности для управления
|
|
|
+Пользователь должен иметь возможность управлять умным домом на любой удобной ему поверхности: через мобильное приложение, телевизор, умную колонку. Для этого встроины свои разделы в приложения для Android и iOS, а также в GUI устройств Sber: SberBox, SberPortal, SberBox Time, телевизоров с Салют ТВ и других.
|
|
|
+
|
|
|
+Но точно стоит отметить, что эта часть платформы не только обеспечивает интерфейс с пользователями и взаимодействуют с API, но и отвечает за системообразующие задачи — например, за подключение девайсов.
|
|
|
+
|
|
|
+На картинке — схема экранов подключения лампы. Не всматривайтесь в каждый экран — просто посмотрите на их количество. И это только одна из множества функций.
|
|
|
+
|
|
|
+### Голосовое управление
|
|
|
+Сейчас уже недостаточно иметь управление устройствами только через интерфейс — пользователи ждут от поставщика умного дома и голосового управления. Для его реализации используется два сервиса.
|
|
|
+
|
|
|
+Первым команду пользователя слышит голосовой ассистент семейства Салют: Афина, Джой или Сбер. Ассистенты используют технологию синтеза и распознавания речи SaluteSpeech (кстати, вы тоже можете использовать её). На этом этапе классификатор определяет, к какому сервису Sber относится команда: к умному дому, или, например, к приложению кинотеатра на приставке.
|
|
|
+
|
|
|
+Затем команды умного дома передаются в платформу умного дома и в дело вступает сервис голосовых команд.
|
|
|
+
|
|
|
+**Главная задача** сервиса — определение намерения (интента) пользователя. Умный дом Sber поддерживает несколько десятков категорий устройств, и для каждой категории существуют свои интенты. Например, лампочку можно захотеть включить, выключить, сделать ярче или теплее, поменять насыщенность и т. д.
|
|
|
+
|
|
|
+Кроме разнообразия самих интентов, при определении намерения приходится решать и другие сложности: например, у пользователя может быть несколько устройств с одинаковыми названиями, название устройства может дублировать название комнаты или дома, команда может подходить к нескольким устройствам и пр. Сервис проходит по дереву интентов, и, учитывая все составляющие фразы, отбрасывает неподходящие ветви и выбирает тот интент, который подходит больше всего.
|
|
|
+
|
|
|
+
|
|
|
+Есть и ещё одна особенность: каждый интент можно выразить разными словами. Они не пытаются учить пользователя фразам управления умным домом, а подстроиться под пользователей. Чтобы быть готовым к самым неожиданным формулировкам, мы постоянно пополняем корзину запросов — как с помощью групп дикторов, так и с помощью регулярного анализа массива нераспознавшихся фраз. Так, например, что пользователи иногда произносят мультикоманды: отдают две команды в одной («Салют, выключи свет и открой шторы»)
|
|
|
+
|
|
|
+### Сценарный движок
|
|
|
+Разные поверхности и голосовое управление — это хорошо. Но умный по-настоящему дом должен не только выполнять ваши команды, но и работать самостоятельно. Поэтому в платформе реализован ещё один важный компонент — сценарный движок. Он запускает устройства по расписанию, голосовой команде или в зависимости от зафиксированных датчиками событий.
|
|
|
+
|
|
|
+Движок умеет управлять не только своими устройствами, но и устройствами партнёров. Например, можно собрать датчик движения Aqara, лампы Yeelight и розетки Sber в один сценарий, который будет выключать свет и электроприборы, если дома долго нет движения.
|
|
|
+
|
|
|
+### Как это всё работает вместе
|
|
|
+Как было сказано выше, бекенд платформы умного дома включает более 60 микросервисов. Микросервисная архитектура не в последнюю очередь выбрана, чтобы эффективнее утилизировать ресурсы и минимизировать паразитный трафик — придерживается подхода Green code и максимально оптимизируем платформу.
|
|
|
+
|
|
|
+Бекенд умного дома работает с небольшими умными девайсами, и их очень много. С каждым нужно поддерживать соединение и обмениваться сообщениями — это сотни тысяч запросов. Для их обслуживания можно было пойти стандартным путём и использовать тяжелые enterprise-решения, но это привело бы к избыточному расходованию ресурсов. Вместо этого мы пишем лёгкие микросервисы на Go.
|
|
|
+
|
|
|
+Все микросервисы — stateless и горизонтально масштабируются. Чтобы пов>ысить устойчивость платформы, для каждого микросервиса запускается минимум два инстанса и балансировщик. Инстансов высоконагруженных микросервисов может быть больше.
|
|
|
+
|
|
|
+Бекенд платформы хостится в облачной инфраструктуре на территории России — используется облако Cloud. Это тоже обеспечивает устойчивость.
|
|
|
+
|
|
|
+Сервисы регулярно проходят аудит безопасности — как внутренний, так и внешний. Внешний выполняет компания BI.ZONE, мы проходим его в режиме White-box: у аудиторов есть доступ ко всей кодовой базе и они могут выполнять любые проверки, включая аутентифицированное сканирование.
|
|
|
+
|
|
|
+---
|
|
|
+# Вопросы:
|
|
|
+1. Какая ключевая особенность прошивки?
|
|
|
+ - **возможность переиспользования.**
|
|
|
+ - stateless
|
|
|
+ - cервисы регулярно проходят аудит безопасности
|
|
|
+ - каждый интент можно выразить разными словами
|
|
|
+2. Что состоит в бекенде платформы?
|
|
|
+ - **более 60 микросервисов, составляющих ядро платформы: сервис интеграции, сервис обновления прошивки, сервис подключения устройств, сценарный движок, сервис голосовых команд, сервис аналитики и многие другие.**
|
|
|
+ - бекенд платформы хостится в облачной инфраструктуре на территории России
|
|
|
+ - бекенд умного дома работает с небольшими умными девайсами
|
|
|
+ - SberBox, SberPortal, SberBox Time,
|
|
|
+3. Какая есть особенность голосового управления?
|
|
|
+ - **каждый интент можно выразить разными словами. Они не пытаются учить пользователя фразам управления умным домом, а подстроиться под пользователей. Чтобы быть готовым к самым неожиданным формулировкам, мы постоянно пополняем корзину запросов — как с помощью групп дикторов, так и с помощью регулярного анализа массива нераспознавшихся фраз. Так, например, что пользователи иногда произносят мультикоманды: отдают две команды в одной («Салют, выключи свет и открой шторы»)**
|
|
|
+ - пользователь должен иметь возможность управлять умным домом на любой удобной ему поверхности: через мобильное приложение, телевизор, умную колонку. Для этого встроины свои разделы в приложения для Android и iOS, а также в GUI устройств Sber: SberBox, SberPortal, SberBox Time, телевизоров с Салют ТВ и других.
|
|
|
+ - Это ещё одна очень важная часть платформы.Производство идёт не все категории устройств, которые нужны нашим пользователям, и готовы делиться технологиями, которые полезны нашим партнёрам. Для взаимодействия с партнёрскими облаками разработана подсистема интеграции — она позволяет подключать к платформе умного дома Sber девайсы других производителей и управлять ими так же, как и нашими собственными устройствами: голосом или через интерфейс в приложении и устройствах Sber.
|
|
|
+ - SberDevices сегодня перезапустили собственную платформу умного дома, отказавшись от сторонних инфраструктурных решений и сделав ее полностью автономной. Также с сегодняшнего дня в продажу поступило первое устройство умного дома Sber нового поколения – самая популярная лампа А60.
|
|
|
+4. Что значит взаимодействие строится на базе открытого API?
|
|
|
+ - **любой вендор может реализовать интеграцию и дать своим пользователям возможность использовать все технологии нашей платформы: множество поверхностей, голосовое управление, сценарный движок. С нами уже интегрированы больше десятка производителей, включая Aqara, Digma, HIPER и Yeelight.**
|
|
|
+ - каждый интент можно выразить разными словами. Они не пытаются учить пользователя фразам управления умным домом, а подстроиться под пользователей. Чтобы быть готовым к самым неожиданным формулировкам, мы постоянно пополняем корзину запросов — как с помощью групп дикторов, так и с помощью регулярного анализа массива нераспознавшихся фраз. Так, например, что пользователи иногда произносят мультикоманды: отдают две команды в одной («Салют, выключи свет и открой шторы»)
|
|
|
+ - cервисы регулярно проходят аудит безопасности
|
|
|
+ -пользователь должен иметь возможность управлять умным домом на любой удобной ему поверхности: через мобильное приложение, телевизор, умную колонку. Для этого встроины свои разделы в приложения для Android и iOS, а также в GUI устройств Sber: SberBox, SberPortal, SberBox Time, телевизоров с Салют ТВ и других.
|
|
|
+
|
|
|
+# Список литературы:
|
|
|
+https://habr.com/ru/company/sberdevices/blog/701964/# Умный дом Sber теперь полностью автономный. Из чего он состоит?
|
|
|
+
|
|
|
+SberDevices сегодня перезапустили собственную платформу умного дома, отказавшись от сторонних инфраструктурных решений и сделав ее полностью автономной. Также с сегодняшнего дня в продажу поступило первое устройство умного дома Sber нового поколения – самая популярная лампа А60.
|
|
|
+
|
|
|
+Анонсировали разработку новой инфраструктуры для своей платформы умного дома полгода назад. Основной задачей было обеспечить бо́льшую надежность работы: элементы сторонних поставщиков ограничивали гибкость в развитии и создавала ненужные риск
|
|
|
+
|
|
|
+### Что умеет и из чего состоит платформа умного дома
|
|
|
+Если коротко — **платформа умного дома умеет отправлять на умные устройства Sber и девайсы партнёров команды и получать от них ответ. На первый взгляд, довольно просто.**
|
|
|
+
|
|
|
+Более подробная схема:
|
|
|
+
|
|
|
+
|
|
|
+С пользователями взаимодействуе идёт с помощью самих конечных устройств, управляющих устройств и нескольких мобильных приложений.
|
|
|
+
|
|
|
+В бекенде платформы — более 60 микросервисов, составляющих ядро платформы: **сервис интеграции, сервис обновления прошивки, сервис подключения устройств, сценарный движок, сервис голосовых команд, сервис аналитики и многие другие.**
|
|
|
+
|
|
|
+Бекенд может взаимодействовать с облаками партнёров и программируемыми контроллерами: транслировать команды, которые пользователи отдали через приложения и устройства Sber, в партнёрское облако или на контроллер, и получать оттуда статус. С помощью такого взаимодействия пользователи получают возможность управлять через умный дом Sber не только устройствами нашего производства, но и сторонними девайсами.
|
|
|
+
|
|
|
+### Умные устройства Sber
|
|
|
+Платформа умного дома не обязательно должна включать устройства своего производства: вы вполне можете обойтись интеграцией с партнёрами и управлять только сторонними лампами, розетками и другими девайсами.
|
|
|
+
|
|
|
+ В дополнение к партнёрским девайсам, Sber производит устройства — и старается сделать их одними из лучших на рынке. Для этого в их команде есть инженеры, которые проверяют аппаратные компоненты, выбирают и инспектируют фабрики, создают процедуры и стенды для приёмочных испытаний.
|
|
|
+
|
|
|
+Вот как (очень укрупнённо) выглядит процесс производства девайсов:
|
|
|
+
|
|
|
+1. **Продуктовая команда делает бизнес-анализ и определяет, какое устройство, с какими характеристиками и по какой цене нужно произвести.**
|
|
|
+
|
|
|
+2. **Инженеры помогают выбрать несколько фабрик, которые могут изготовить устройство в соответствии с нашими требованиями. Фабрики инспектируют, у них заказываются тестовые партии устройств.**
|
|
|
+
|
|
|
+3. **Устройства из тестовой партии тщательно тестируются. Например, на картинке ниже — сферический фотометр. Внутренняя часть этого шара оснащена датчиками, с помощью которых проверялись световой поток и равномерность освещения прототипов ламп. Также у тестовых устройств проверяются электрические характеристики, температуры работы и многие другие параметры.**
|
|
|
+
|
|
|
+
|
|
|
+4. **Как правило, даже самые лучшие образцы не устраивают нас полностью, поэтому наши инженеры дорабатывают схемотехнику и конструкцию устройства.**
|
|
|
+
|
|
|
+5. **Фабрика, сделавшая лучшие устройства и готовая внести необходимые нам доработки, получает заказ на производство. Пока она готовит производственные линии, они тоже не сидят без дела — нужно подготовить протоколы для приёмки девайсов.**
|
|
|
+
|
|
|
+**Например:** у всех устройств обязательно проверяется базовая функциональность. У ламп это: включение, выключение, изменение цветов и непрерывная работа в течение заданного времени. А ещё мы разработали программу самодиагностики — она встраивается прямо в прошивку и проверяет, подключены ли к плате все необходимые компоненты. В партии ламп, которая сейчас поступила в продажу, этот тест помог отсеять несколько десятков неправильно собранных устройств.
|
|
|
+### Прошивка устройств
|
|
|
+
|
|
|
+Чтобы производимые на фабриках девайсы стали умными, недостаточно железа. Нужна прошивка — её тоже пишут инженеры Sber.
|
|
|
+
|
|
|
+На прошивке нужно остановиться чуть подробнее, потому что этот компонент платформы по-своему уникален. На рынке России крайне мало поставщиков облачных умных домов, самостоятельно разрабатывающих своё системное ПО, а не использующих проприетарные версии. Это не только вопрос престижа: прошивка определяет, из какого облака устройство будет получать команды, поэтому без неё говорить о независимой инфраструктуре нельзя.
|
|
|
+
|
|
|
+Проприетарная прошивка накладывает и многие другие ограничения: можно ли обновить устройство «по воздуху», можно ли усилить алгоритм шифрования и прочее. Самостоятельно разрабатывая прошивку они получают бо́льшую гибкость и можем выбирать решения, лучшие для наших пользователей.
|
|
|
+
|
|
|
+Несколько примеров того, что уже удалось реализовать, используя это преимущество:
|
|
|
+
|
|
|
+- Лампа и другие устройства используют только российскую облачную инфраструктуру.
|
|
|
+
|
|
|
+- Используется стойкий криптографический протокол на уровне приложения после подключения к лампе по BLE — нативный механизм шифрования BLE обладает уязвимостью и уже не может считаться надёжным. Кроме того, внедрена криптографическую подпись в образ прошивки.
|
|
|
+
|
|
|
+- Модуль безопасного OTA-обновления не только позволяет дистанционно обновлять ПО, но и защищает лампу в момент инсталляции прошивки: даже если пользователь выключит питание лампы во время обновления (а такое, увы, не редкость), она не выйдет из строя.
|
|
|
+
|
|
|
+- У нас появился таймер времени выключения: теперь лампа знает, когда она выключалась в последний раз. Это помогло победить проблему «спонтанного пейринга», когда лампа переходила в режим подключения по пяти включениям и выключениям подряд, не различая при этом, что эти переключения случались с разницей в несколько часов. Что важно — проблему решили установкой простейшей RC-цепочки и изменениями прошивки, без впаивания аппаратного таймера и заметного удорожания устройства.
|
|
|
+
|
|
|
+Ещё одна **ключевая особенность** прошивки — возможность переиспользования. Она состоит из трёх слоёв: слой с приложением для управления устройством, слой IoT-платформы и физический слой с реализацией радиомодулей и хранилищами. Последние два уровня — универсальные. Они не меняются от устройства к устройству, кастомизируется только слой приложения. Это будет экономить нам время при выпуске следующих девайсов.
|
|
|
+
|
|
|
+А вот так выглядит разработка прошивки. Слева — лампочка, но на открытой плате, на которой собраны все модули и чип, его можно извлекать и перепрошивать. Если присмотреться, то можно увидеть и светодиоды лампы. Справа — уже почти готовая лампа с портом для перепрошивки.
|
|
|
+
|
|
|
+
|
|
|
+### Сервис интеграции
|
|
|
+Это ещё одна очень важная часть платформы.Производство идёт не все категории устройств, которые нужны нашим пользователям, и готовы делиться технологиями, которые полезны нашим партнёрам. Для взаимодействия с партнёрскими облаками разработана подсистема интеграции — она позволяет подключать к платформе умного дома Sber девайсы других производителей и управлять ими так же, как и нашими собственными устройствами: голосом или через интерфейс в приложении и устройствах Sber.
|
|
|
+
|
|
|
+А ещё она не решает за пользователя, как ему организовывать свой дом, поэтому эта подсистема умеет работать с разными технологическими стеками: Wi-Fi, Zigbee, Bluetooth, MQTT.
|
|
|
+
|
|
|
+**Взаимодействие строится на базе открытого API** — любой вендор может реализовать интеграцию и дать своим пользователям возможность использовать все технологии нашей платформы: множество поверхностей, голосовое управление, сценарный движок. С нами уже интегрированы больше десятка производителей, включая Aqara, Digma, HIPER и Yeelight.
|
|
|
+
|
|
|
+Для компаний-интеграторов и DIY-энтузиастов, автоматизирующих дома с помощью программируемых контроллеров Wiren Board и LogicMachine, они максимально упростили подключение к облаку Sber: разработанное приложение можно установить на контроллер — и оно обеспечит трансляцию команд от умного дома Sber на контроллер и в обратном направлении. После этого даже проводными устройствами можно будет управлять голосом и через интерфейс устройств и приложений от Sber.
|
|
|
+
|
|
|
+### Поверхности для управления
|
|
|
+Пользователь должен иметь возможность управлять умным домом на любой удобной ему поверхности: через мобильное приложение, телевизор, умную колонку. Для этого встроины свои разделы в приложения для Android и iOS, а также в GUI устройств Sber: SberBox, SberPortal, SberBox Time, телевизоров с Салют ТВ и других.
|
|
|
+
|
|
|
+Но точно стоит отметить, что эта часть платформы не только обеспечивает интерфейс с пользователями и взаимодействуют с API, но и отвечает за системообразующие задачи — например, за подключение девайсов.
|
|
|
+
|
|
|
+На картинке — схема экранов подключения лампы. Не всматривайтесь в каждый экран — просто посмотрите на их количество. И это только одна из множества функций.
|
|
|
+
|
|
|
+### Голосовое управление
|
|
|
+Сейчас уже недостаточно иметь управление устройствами только через интерфейс — пользователи ждут от поставщика умного дома и голосового управления. Для его реализации используется два сервиса.
|
|
|
+
|
|
|
+Первым команду пользователя слышит голосовой ассистент семейства Салют: Афина, Джой или Сбер. Ассистенты используют технологию синтеза и распознавания речи SaluteSpeech (кстати, вы тоже можете использовать её). На этом этапе классификатор определяет, к какому сервису Sber относится команда: к умному дому, или, например, к приложению кинотеатра на приставке.
|
|
|
+
|
|
|
+Затем команды умного дома передаются в платформу умного дома и в дело вступает сервис голосовых команд.
|
|
|
+
|
|
|
+**Главная задача** сервиса — определение намерения (интента) пользователя. Умный дом Sber поддерживает несколько десятков категорий устройств, и для каждой категории существуют свои интенты. Например, лампочку можно захотеть включить, выключить, сделать ярче или теплее, поменять насыщенность и т. д.
|
|
|
+
|
|
|
+Кроме разнообразия самих интентов, при определении намерения приходится решать и другие сложности: например, у пользователя может быть несколько устройств с одинаковыми названиями, название устройства может дублировать название комнаты или дома, команда может подходить к нескольким устройствам и пр. Сервис проходит по дереву интентов, и, учитывая все составляющие фразы, отбрасывает неподходящие ветви и выбирает тот интент, который подходит больше всего.
|
|
|
+
|
|
|
+
|
|
|
+Есть и ещё одна особенность: каждый интент можно выразить разными словами. Они не пытаются учить пользователя фразам управления умным домом, а подстроиться под пользователей. Чтобы быть готовым к самым неожиданным формулировкам, мы постоянно пополняем корзину запросов — как с помощью групп дикторов, так и с помощью регулярного анализа массива нераспознавшихся фраз. Так, например, что пользователи иногда произносят мультикоманды: отдают две команды в одной («Салют, выключи свет и открой шторы»)
|
|
|
+
|
|
|
+### Сценарный движок
|
|
|
+Разные поверхности и голосовое управление — это хорошо. Но умный по-настоящему дом должен не только выполнять ваши команды, но и работать самостоятельно. Поэтому в платформе реализован ещё один важный компонент — сценарный движок. Он запускает устройства по расписанию, голосовой команде или в зависимости от зафиксированных датчиками событий.
|
|
|
+
|
|
|
+Движок умеет управлять не только своими устройствами, но и устройствами партнёров. Например, можно собрать датчик движения Aqara, лампы Yeelight и розетки Sber в один сценарий, который будет выключать свет и электроприборы, если дома долго нет движения.
|
|
|
+
|
|
|
+### Как это всё работает вместе
|
|
|
+Как было сказано выше, бекенд платформы умного дома включает более 60 микросервисов. Микросервисная архитектура не в последнюю очередь выбрана, чтобы эффективнее утилизировать ресурсы и минимизировать паразитный трафик — придерживается подхода Green code и максимально оптимизируем платформу.
|
|
|
+
|
|
|
+Бекенд умного дома работает с небольшими умными девайсами, и их очень много. С каждым нужно поддерживать соединение и обмениваться сообщениями — это сотни тысяч запросов. Для их обслуживания можно было пойти стандартным путём и использовать тяжелые enterprise-решения, но это привело бы к избыточному расходованию ресурсов. Вместо этого мы пишем лёгкие микросервисы на Go.
|
|
|
+
|
|
|
+Все микросервисы — stateless и горизонтально масштабируются. Чтобы пов>ысить устойчивость платформы, для каждого микросервиса запускается минимум два инстанса и балансировщик. Инстансов высоконагруженных микросервисов может быть больше.
|
|
|
+
|
|
|
+Бекенд платформы хостится в облачной инфраструктуре на территории России — используется облако Cloud. Это тоже обеспечивает устойчивость.
|
|
|
+
|
|
|
+Сервисы регулярно проходят аудит безопасности — как внутренний, так и внешний. Внешний выполняет компания BI.ZONE, мы проходим его в режиме White-box: у аудиторов есть доступ ко всей кодовой базе и они могут выполнять любые проверки, включая аутентифицированное сканирование.
|
|
|
+
|
|
|
+---
|
|
|
+# Вопросы:
|
|
|
+1. Какая ключевая особенность прошивки?
|
|
|
+ - **возможность переиспользования.**
|
|
|
+ - stateless
|
|
|
+ - cервисы регулярно проходят аудит безопасности
|
|
|
+ - каждый интент можно выразить разными словами
|
|
|
+2. Что состоит в бекенде платформы?
|
|
|
+ - **более 60 микросервисов, составляющих ядро платформы: сервис интеграции, сервис обновления прошивки, сервис подключения устройств, сценарный движок, сервис голосовых команд, сервис аналитики и многие другие.**
|
|
|
+ - бекенд платформы хостится в облачной инфраструктуре на территории России
|
|
|
+ - бекенд умного дома работает с небольшими умными девайсами
|
|
|
+ - SberBox, SberPortal, SberBox Time,
|
|
|
+3. Какая есть особенность голосового управления?
|
|
|
+ - **каждый интент можно выразить разными словами. Они не пытаются учить пользователя фразам управления умным домом, а подстроиться под пользователей. Чтобы быть готовым к самым неожиданным формулировкам, мы постоянно пополняем корзину запросов — как с помощью групп дикторов, так и с помощью регулярного анализа массива нераспознавшихся фраз. Так, например, что пользователи иногда произносят мультикоманды: отдают две команды в одной («Салют, выключи свет и открой шторы»)**
|
|
|
+ - пользователь должен иметь возможность управлять умным домом на любой удобной ему поверхности: через мобильное приложение, телевизор, умную колонку. Для этого встроины свои разделы в приложения для Android и iOS, а также в GUI устройств Sber: SberBox, SberPortal, SberBox Time, телевизоров с Салют ТВ и других.
|
|
|
+ - Это ещё одна очень важная часть платформы.Производство идёт не все категории устройств, которые нужны нашим пользователям, и готовы делиться технологиями, которые полезны нашим партнёрам. Для взаимодействия с партнёрскими облаками разработана подсистема интеграции — она позволяет подключать к платформе умного дома Sber девайсы других производителей и управлять ими так же, как и нашими собственными устройствами: голосом или через интерфейс в приложении и устройствах Sber.
|
|
|
+ - SberDevices сегодня перезапустили собственную платформу умного дома, отказавшись от сторонних инфраструктурных решений и сделав ее полностью автономной. Также с сегодняшнего дня в продажу поступило первое устройство умного дома Sber нового поколения – самая популярная лампа А60.
|
|
|
+4. Что значит взаимодействие строится на базе открытого API?
|
|
|
+ - **любой вендор может реализовать интеграцию и дать своим пользователям возможность использовать все технологии нашей платформы: множество поверхностей, голосовое управление, сценарный движок. С нами уже интегрированы больше десятка производителей, включая Aqara, Digma, HIPER и Yeelight.**
|
|
|
+ - каждый интент можно выразить разными словами. Они не пытаются учить пользователя фразам управления умным домом, а подстроиться под пользователей. Чтобы быть готовым к самым неожиданным формулировкам, мы постоянно пополняем корзину запросов — как с помощью групп дикторов, так и с помощью регулярного анализа массива нераспознавшихся фраз. Так, например, что пользователи иногда произносят мультикоманды: отдают две команды в одной («Салют, выключи свет и открой шторы»)
|
|
|
+ - cервисы регулярно проходят аудит безопасности
|
|
|
+ -пользователь должен иметь возможность управлять умным домом на любой удобной ему поверхности: через мобильное приложение, телевизор, умную колонку. Для этого встроины свои разделы в приложения для Android и iOS, а также в GUI устройств Sber: SberBox, SberPortal, SberBox Time, телевизоров с Салют ТВ и других.
|
|
|
+
|
|
|
+# Список литературы:
|
|
|
+https://habr.com/ru/company/sberdevices/blog/701964/
|