Приложения для управления лампочкой xiaomi

Обновлено: 19.09.2024

Каталог компании Xiaomi насчитывает большое число необычных и полезных устройств, включая «умные» лампочки, управляемые со смартфона. Несмотря на простоту в эксплуатации, их подключение нередко вызывает у пользователей некоторые трудности.

Мы подготовили для вас небольшую инструкцию о том, как подключить «умную» лампочку Xiaomi Yeelight LED Smart Light Bulb Color . Следуя простым указаниями, вы сможете осуществить синхронизацию девайса со смартфоном и полностью раскрыть потенциал изделия.

Как подключить Xiaomi Yeelight LED Smart Light Bulb Color к смартфону

После распаковки лампочки и вкручивания ее в цоколь, вам надо активировать Wi-Fi на смартфоне, зайти в магазин приложений (App Store, «Play Маркет») и найти там приложение Yeelight.

Если у вас имеется собственный Mi-аккаунт, то просто авторизуйтесь, введя логин и пароль. Если учетной записи Xiaomi у вас нет, нажмите на кнопку «Создать аккаунт» или же используйте свой профиль Facebook.

Завершите авторизацию, зайдите в «Настройки системы» и нажмите на строку «Добавить устройство». В появившемся перечне найдите «Yeelight LED-лампа» и нажмите «Продолжить». Yeelight может запросить доступ к использованию GPS, предоставьте ей это право для корректной работы.

После этого вам понадобится выбрать MAC-адрес подключаемого устройства и еще раз нажать на кнопку «Продолжить». При отсутствии необходимого пункта в списке попробуйте сбросить настройки лампочки (инструкция чуть ниже) и провести всю процедуру заново.

Далее вам нужно будет ввести пароль от домашней Wi-Fi-сети и нажать на кнопку «Далее». Спустя пару минут синхронизация будет успешно завершена.

Как настроить лампочку «Сяоми»

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

Если вы нажмете на изображение лампочки, то перед вами откроется окно с различными опциями:

  • Включение/Отключение;
  • Регулировка яркости;
  • Выбор шаблонов работы;
  • Настройка теплоты света в пределах 1700 – 6500К.

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

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

В меню «Шаблон» есть возможность сформировать собственный алгоритм работы устройства, который впоследствии можно активировать в один клик. Делается это максимально просто: выбираете иконку из списка, печатаете название шаблона, выбираете вашу лампочку, а затем отмечаете нужное действие (допустим, оттенок света) и нажимаете на кнопку «Готово».

В главном меню лампочки Xiaomi есть пункт «Расписание», в котором настраивается время включения или отключения девайса, количество повторов и применимый шаблон.

Таким образом, настройка свечения лампы производится буквально в пару кликов на смартфоне, что делает ее эксплуатацию максимально удобной.

Дополнительным бонусом является присутствие функции «Музыкальный режим». Для его активации предоставьте программе доступ к микрофону смартфона. После этого свет лампочки будет мерцать в такт играющей на мобильном телефоне музыке.

Как сбросить настройки лампочки Xiaomi Yeelight LED Smart Light Bulb Color

Для сброса настроек лампочки и возвращению до заводского состояния необходимо проделать следующее: активировать и деактивировать переключатель с помощью пятикратного нажатия с интервалом 3 секунды. Это нужно делать до появления мерцания, после чего вам остается дождаться перезагрузки и постоянного свечения белом оттенком.

Голосовое управление лампочкой Xiaomi Yeelight LED Smart Light Bulb Color

«Умная» лампочка характеризуется возможностью управления при помощи голосовых команд. Для того, чтобы это стало возможным, вам нужно установить приложение Google Home с понятным и лаконичным интерфейсом, если у вас Android-смартфон.

Обладателям «айфона» нужно воспользоваться программой Siri Shortcuts. В быстрых командах Siri нужно будет выбрать необходимую опцию и нажать на кнопку записи. После этого вы сможете произносить записанную голосовую команду, которая будет оперативно исполнена устройством

Qingdao Yeelink Information Technology Co., Ltd.

    • Образ жизни: № 131 в этой категории
    • 3,4 • Оценок: 348
      • Бесплатно

      Снимки экрана

      Описание

      Play with lights, compose with colors. With Yeelight APP, controlling lights becomes such a fun and easy thing. Add, configure, monitor and control your Yeelight products on your mobile devices with a touch of your fingertip. Compatible Yeelight devices include bulbs, desk lamps, ceiling lights, ambiance lights and all future products.
      Features:
      Remote Control
      Monitor and control your Yeelight devices from anywhere in the world, as long as they are connected.
      Rooms & Groups
      Group your devices together as Rooms or Groups for easy control.
      Moments
      Save the moment of your devices to Scene for future use.
      Schedules
      Schedule your device to perform certain lighting effects on set time schedule.
      Interactions
      Interact with your Mi band to turn your lights off when you fall asleep.
      Scenes
      Updating special presets to choose from for different user scenes.
      Friends of Yeelight:
      Amazon Alexa
      Talk to Alexa and control your lights. Just say “Alexa, dim my bedroom light by 50%,” and your Amazon Echo/Dot will adjust the brightness automatically.
      Google Assistant
      Google Assistant connects seamlessly with Yeelight devices, so you can use your voice to control your lights.
      IFTTT
      IFTTT is a free platform that helps you achieve more amazing implements by connecting with all your APPs and devices.
      More Tools
      Yeelight is an open platform, all developers are welcomed to submit your own tools and share with millions of Yeelight users all over the world.

      Что нового

      Fix bugs and improve performance

      Оценки и отзывы

      Led light

      Всем, кто столкнулся с проблемой подключения через это приложение. Просто подключите Ваше Смарт устройство через приложение mihome, и у Вас не будет проблем. Приложение yeelight не устанавливайте.

      Не добавляются лампы

      Во время добавления новой лампы на шаге где просит выбрать сеть Wi-Fi тупо перебрасывает в настройки телефона и выбрать не даёт. Из-за этого невозможно добавить лампы в приложение. Деньги на ветер.

      Не экономьте

      Конфиденциальность приложения

      Разработчик Qingdao Yeelink Information Technology Co., Ltd. указал, что в соответствии с политикой конфиденциальности приложения данные могут обрабатываться так, как описано ниже. Подробные сведения доступны в политике конфиденциальности разработчика.

      Связанные с пользова­телем данные

      Может вестись сбор следующих данных, которые связаны с личностью пользователя:

      Конфиденциальные данные могут использоваться по-разному в зависимости от вашего возраста, задействованных функций или других факторов. Подробнее

      Информация

      Провайдер Qingdao Yeelink Information Technology Co., Ltd. Совместимость iPhone Требуется iOS 9.0 или новее. iPad Требуется iPadOS 9.0 или новее. iPod touch Требуется iOS 9.0 или новее.

      русский, английский, голландский, испанский, итальянский, корейский, немецкий, польский, португальский, тайский, традиционный китайский, украинский, упрощенный китайский, французский, чешский, японский

      Неотъемлемая часть умного дома — это управление освещением. Допустим, вы решили поставить себе такую систему, но не знаете с чего начать, или как лучше это организовать — значит эта статья будет вам полезна. Я постараюсь разобрать все аспекты организации системы освещения в Xiaomi Smart Home и ограничения, которые так же присутствуют.

      Заяц Xiaomi управляет светом

      Принцип умного освещения

      Для начала стоить задать вопрос, а что это даст и нужно ли это мне?

      Отвечаю: автоматизация света позволит обеспечить более легкое управление с использованием сценариев автоматизации и голосовых команд (например с Алисой от Яндекса), удаленным контролем состояния (не нужно переживать, что забыли выключить свет). Банальное управление освещением по датчику движения — это уже очень удобно, а если добавить другие условия, например включение только в заданное время и с определенным уровнем яркости. Или управление всеми лампами в доме, достаточно сказать Алисе "Спокойной ночи", как она отключает весь свет.

      Чтобы это все реализовать, нам надо получить доступ к конечным устройствам освещения. Для этого есть два пути: умные выключатели или smart лампы.

      Как организовать освещение в умном доме

      В первом случае, необходимо заменить ваши обычные выключатели на Aqara Wall Switch, которые по протоколу ZigBee подключаются к центральному шлюзу. После этого будет возможность удаленно включать и выключатель свет, при этом сохраняя ручное управление.

      Второй вариант — использовать умные лампы, которые подключаются к WiFi сети. Управлять такими лампами можно через приложение Mi Home, или при участии других устройств Xiaomi.

      Оба варианта имеют свои плюсы и минусы, давайте разберем каждый из них.

      Физическое управление светом при помощи умных выключателей

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

      Схема управления умным выключателем Xiaomi

      Но не все пройдет гладко, Xiaomi пока выпускают только выключатели для китайского рынка, а это значит, что им потребуется квадратная монтажная коробка (в круглую они не влезут). Придется поработать перфоратором, и лучше это делать на стадии ремонта:

      Монтаж квадратной коробки для выключателя Aqara

      Квадратная монтажная коробка универсальна и после установки в неё можно поставить и обычный выключатель (предназначенный для круглого подрозетника). После шпатлевки и оклейки обоев выглядит не так страшно:

      Монтажная коробка для диммера Xiaomi

      Можно внести изменения и в старые подрозетники, аккуратно раздолбав углы перфоратором, но делать это нужно с осторожностью (или прочитать статью дальше и подумать над установкой умных светильников). Да, не достаточно просто установить выключатели, для их подключения к интернету используется специальный шлюз, или устройство с такой функцией.

      Второй важный момент — выключатели бывают двух типов: С нулевой линией (Zero line) и обычные (No neutral line). Внешне они идентичные, но сильно отличаются по функциям, подключению и цене!

      Если обычному достаточно только фазы, то к версии Zero line подключается дополнительно и нулевой кабель, из-за чего на задней панели есть дополнительный разъем:

      Чем отличаются выключатели Aqara

      Это пример двухкнопочных выключателей. На QBKG03LM в разъем L входит фаза под напряжением, L1 и L2 - фаза выходит и идет на светильники. В QBKG12LM все аналогично, только дополнительно подключается ноль в разъем N. Схематично это выглядит так:

      Как подключать выключатели Aqara

      И как определить, какой тип нужен вам? В старых домах обычно используется только выключатель с разрывом фазы. Чтобы убедиться, снимаем старый выключатель и считаем количество проводов. Для однокнопочного выключателя будет 2 кабеля, а для двухкнопочного (если используется 2 канала) 3 кабеля. В таком случае необходимо брать один из выключателей без нулевой линии (QBKG03LM или QBKG04LM).

      Лучше обстоят дела, если делаете ремонт, и проводка прокладывается заново. Тогда просто подводим в подрозетник входную и выходную фазу и нулевой провод. Выключатели лучше ставить с Zero line (QBKG12LM или QBKG11LM), но никто не запрещает поставить выключатели без нулевой линии.

      Но подключением различия не заканчиваются, с Zero line более функционален, помимо удаленного управления он может отобразить потребление электроэнергии, и при этом стоит дешевле обычного. Еще один момент, обычный будет некорректно работать с "умными" лампами. Поясню, если умную лампу выключить с пульта, она начинает потреблять мало электричества, выключатель думает, что к нему ничего не подключено и отключается. В таком случае, обратно с пульта лампу уже не включить.

      Подводя итог, если есть возможность, лучше ставить с нулевой линией.

      Часто встает вопрос организации проходного выключателя и стандартная схема подключения тут не подойдет! Т.е. нельзя поставить просто 2 выключателя Xiaomi вместо обычных проходных (вы просто не сможете их подключить, поскольку у выключателей Xiaomi нет фиксации положения). Для этого есть более простое решение, ставим 1 физический выключатель Aqara и 1 беспроводной, который питается от батарейки. А в сценариях настраиваем дублирование нажатие кнопки основного выключателя, при нажатии кнопки беспроводного.

      Беспроводной выключатель Xiaomi Aqara

      Тут есть свои плюсы, причем значительные — экономия времени и материалов на прокладке проводки. Да и не обязательно вешать на стену, можно прикрепить его например к стенке кровати.

      Физические выключатели могут быть переведены в логические режим работы. Это значит, что при нажатии клавиш не будет разрываться линия соединения. При этом настраивается действие, которое запускается при нажатии кнопки. Это позволяет при помощи одного выключателя управлять другим, или сторонними устройствами умного дома, например открыть шторы.

      Да, в самом начале выключатели были доступны только в белом матовом цвете. Сейчас добавился серый и светло-золотой.

      Разные цвета

      Подведем итоги, плюсы использования выключателей:

      1. Не требуется менять светильники;

      2. Сохранение физического управления и возможности вернуть обычный выключатель;

      3. Подсчет электроэнергии (для выключателей с нулевой линией);

      4. Возможность голосового управления.

      Минусы:

      1. Требуются квадратные монтажные коробки;

      2. Управление ограничивается только функцией включения\выключения, нет возможности управлять уровнем яркости;

      3. Своеобразный дизайн выключателей;

      4. Для работы требуется ZigBee шлюз.

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

      Реле Aqara фото

      И схема подключения (с аналоговыми выключателями):

      Подключение реле Xiaomi с выключателями

      Установка такого реле позволит нам сохранить внешний вид как светильников, так и выключателей. При этом обеспечить возможность удаленного управления и участия в сценариях умного дома. Но и свой минус есть, на данный момент реле не поддерживает голосовое управление Алисой от Яндекса. Такое управление доступно в реле Yeelight.

      Умные светильники Xiaomi

      Второй вариант автоматизировать освещение — установить управляемые лампы. Подойдет любой светильник Xiaomi с подключением по WiFi (есть исключение, Bluetooth mesh светильники Yeelight и Aqara Zigbee lamp). Сейчас доступно около 130 различных устройств освещения, от ночников и настольных ламп до светодиодных лент и полноценных люстр.

      В основной массе, в умном доме Xiaomi преобладают лампы под брендом Yeelight, Mijia, Philips, но есть и сторонние производители, например ИКЕА.

      Например, возьмем недавно вышедшую Yeelight filament bulb:

      Комплектация филаментной лампочки Xiaomi

      Нам достаточно подключить её в приложении Mi Home, дополнительных устройств не требуется. Теперь мы можем удаленно управлять ей из любой точки земли, регулировать уровень яркости и настраивать таймер отключения. Голосовое управление так-же доступно сразу после подключения.

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

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

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

      Фото установленного диммера Xiaomi

      Да, и не вздумайте использовать сторонние физические диммеры с умными лампами, иначе сожжете в них контроллер.

      Сценарии автоматизации освещения

      Но главный момент — это настройка автоматизации. Возьмем помещения без естественного освещения, например ванна. Там простые светильники, подключенные через выключатель Aqara. Добавляем датчик движения и настраиваем 2 сценария:

      Сценарий автоматизации освещения Aqara

      Первый включает свет при обнаружении движения, а второй его выключит, если движения не будет в течение 5 минут — он выключится. Ничего сложного, правда ведь?

      Идем дальше. Задача — включать свет в коридоре когда открывается входная дверь, но только при возвращении домой. Можно конечно так-же ограничиться датчиком движения, но получается задержка, т.е. я захожу еще в темное помещение, а потом включается свет. Как выкрутился я (потребуется дополнительно датчик открытия двери):

      Автоматическое включение света при открытии двери

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

      Как отключить свет во всей квартире

      Из дополнительных условий сценариев, есть возможность использовать отдельный датчик уровня освещенности, чтобы свет не включался когда и так уже светло. Есть конечно и встроенный в датчике движения Aqara, но работает он крайне плохо.

      Настройка сценариев автоматизации

      Можно задать включение умных светильников с определенным уровнем яркости, в зависимости от текущего уровня света, или от времени суток.

      Возможно слышали о том, что свет может отключаться автоматически, когда вы засыпаете? Да, такое есть, но с некоторыми оговорками. Во-первых, вам нужно устройство, которое фиксирует момент засыпания, например Mi Band 4. А во-вторых, светильник, который поддерживает эту функцию (например люстра Yeelight). Настраивается в дополнительных параметрах лампы:

      Автоматическое отключение света

      Можно придумать еще много других сценариев, например включение лампы красным светом при обнаружении протечки воды, но все они индивидуальны.

      Голосовое управление

      Разумеется, всем этим добром можно управлять голосом (за исключением нескольких устройств). У меня дома стоит Яндекс станция, управлять можно выключателями и всеми умными светильниками. Есть возможность разграничения по зонам, чтобы управлять всем освещением в комнате. Согласитесь, удобно из кровати сказать команду, и быть уверенным в отключении всех устройств.

      Сценарий голосового управления

      Для добавления лампы в систему голосового управления, подключаем их в систему Mi Home и подключаем аккаунт в Яндексе. Подробнее можно прочитать в этой статье.

      Пример голосовых команд:

      Пример команд

      Выключатели так-же доступны для управления, но список команд очень ограничен:

      Алиса управление выключателем Xiaomi

      Время реакции на команды в районе 1 секунды, особых задержек нет.

      Но одной Алисой голосовые помощники не ограничиваются, на второе место я бы поставил HomeKit от Apple с помощником Siri. Но тут есть некоторые трудности, далеко не все устройства можно добавить в эту систему. Обычно, производитель указывает совместимость в описании устройства, а на коробке должен быть код сопряжения:

      Qr код подключения к Apple HomeKit

      Это касается устройств, работающих по WiFi, ZigBee подключается автоматически, если подключены к совместимому шлюзу. На момент написания статьи это Aqara Hub и Mijia Gateway 3. Вот например один из выключателей:

      Управление выключателем Aqara в HomeKit

      И управление через Siri:

      Управление голосом через помощника Siri

      От себя хочу заметить, что время реакции у Siri заметно лучше Алисы.

      Так в приложении отображается ночник Mijia Bedside Lamp 2:

      Ночник Xiaomi в HomeKit

      Хоть сейчас и Xiaomi в большинство устройств добавляет поддержку умного дома Apple, их число невелико. Особенно это касается старых моделей светильников. А цены на колонку Apple HomePod сложно назвать демократичными.

      Ну и на последнем месте Google Home, в нем дела обстоят еще хуже (как минимум, на момент написания статьи). Тут поддерживаются большинство ламп, в основном под брендом Yeelight, но не поддерживаются выключатели.

      Google Home

      Если нравится гугл ассистент и у вас только умные светильники — можно использовать.

      Я остановил свой выбор на Алисе от Яндекса - это наиболее бюджетный и практичный вариант.

      Заключение

      Умное освещение — это отличный пример автоматизации, который позволяет сделать жизнь немного проще. От себя хочу посоветовать, если надумаете ставить такую систему, лучше задействовать все лампочки в доме. Будет не очень удобно, если свет в одной из комнат будет обычным и придется его проверять и не забывать выключить.

      И ни кто не мешает использовать одновременно и обычные светильники (с подключением через умные выключатели) и умные лампы. К примеру у меня дома есть 2 выключателя Aqara, умная люстра Yeelight 650, группа точечных светильников Philips, светодиодная лента для подсветки кухни, ночник и настольная лампа. И всем этим я могу управлять единственным нажатием беспроводной кнопки или голосовой командой.

      Если возникли вопросы, можете задать их в комментариях. Благодарю за внимание!


      Всем привет!
      Думаю многие, интересующиеся умным домом или просто технологичным обустройством своего жилища, задумывались об «атмосферной» и нестандартной осветительной системе.

      Один из способов такого «необычного» освещения комнаты во время просмотра фильмов предлагает компания Philips с технологией Ambilight, встроенной в особо навороченные телевизоры этого бренда.

      В этой статье вы обнаружите реализацию подсветки Ambilight с помощью умных ламп Yeelight от Xiaomi!

      Об Ambilight

      Кто не знает – технология Ambilight представляет собой встроенную в телевизоры фоновую подсветку, которая, анализируя цветовую картинку кадра на экране телевизора, воспроизводит рассеянный свет по периметру телевизора.


      • создает соответствующую фильму обстановку, что увеличивает вовлеченность при просмотре;
      • визуально увеличивает размер изображения;
      • обеспечивает ненавязчивую подсветку комнаты, что позволяет снизить напряжение на глаза в сравнении с просмотром фильма в полной темноте.

      Что за «умные» лампы?

      Для создания этого варианта подсветки понадобится любое осветительное устройство бренда Yeelight (дочерняя компания Xiaomi) или Xiaomi (но только те, в названии которых присутствует упоминание Yeelight). Это означает, что устройство встраивается в экосистему умного дома Xiaomi и управляется через приложение Yeelight.


      На мой взгляд, адаптивная подсветка – не та фишка, ради которой кто-то побежит покупать умную лампу Xiaomi (за существенные деньги кстати). Однако, как по мне, это хорошая возможность расширить функционал уже имеющейся дома лампы. В любом случае, как обладатель двух ламп Xiaomi, могу заявить, что от двух месяцев их использования у меня остались только приятные впечатления.

      Приложении Yeelight играет немаловажную роль в реализации этого проекта, так как в нем присутствует один полезный параметр – Developer mode.



      В последних обновлениях его переименовали на «Управление по LAN»

      Современная экосистема умного дома основывается на обмене данными между устройствами по протоколу wi-fi. В каждое умное устройство встроен wi-fi модуль, позволяющий подключаться к локальной беспроводной сети. Благодаря этому осуществляется управление устройством через облачный сервис умного дома. Однако Developer mode позволяет связываться c устройством напрямую, отправляя запросы на выделенный устройству IP адрес (адрес устройства можно узнать в приложении Yeelight в информации об устройстве). Этот режим гарантирует прием данных с девайсов, находящихся в одной локальной сети с умной лампой. На сайте Yeelight присутствует небольшое демо функционала режима разработчика.

      Благодаря этой опции возможно реализовать функцию адаптивной подсветки и встроить её в плеер с открытым исходным кодом.

      Определение функционала

      Дальнейший пост будет посвящен тому, с какими трудностями (и способами их решения) может столкнуться инженер, задумавшийся спроектировать подобное, а также общему прогрессу в реализации задуманного.

      Если вас интересует исключительно готовая программа, то вы можете сразу перейти к пункту «Для тех, кто просто хочет пользоваться готовым плеером».

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

      • Необходимо разработать функционал, позволяющий динамически изменять параметры (цвет или яркость/температура света в случае использования устройства без rgb светодиодов) умной лампы в зависимости от текущего изображения в окне медиаплеера.
      • Функционал должен поддерживать использование нескольких умных ламп разных моделей одновременно.
      • Функционал должен иметь механизм независимого анализа нескольких зон изображения, что позволит указывать зону «отслеживания» цвета для конкретной лампы.
      • Текущая конфигурация ламп должна сохраняться и загружаться при последующем использовании программы.
      • Функционал должен встраиваться в выбранный для проекта медиапроигрыватель.

      Для тех, кто просто хочет пользоваться готовым плеером

      Если у вас нет желания разбираться в реализации адаптивной подсветки и вы просто хотите пользоваться готовым плеером, можете скачать уже собранный jar файл из репозитория и затем обязательно прочитать раздел Before you start в README файле из репозитория.

      Разработка

      Выбор инструментов

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

      Мой выбор пал на плеер vlcj player и библиотеку Yapi, написанные на языке Java. В качестве инструмента сборки был использован Maven.

      Vlcj представляет собой фреймворк, позволяющий встраивать в приложение Java нативный плеер VLC, а так же управлять жизненным циклом плеера через java код. У автора фреймворка так же имеется демонстрационная версия плеера, который почти полностью повторяет интерфейс и функционал VLC плеера. Самая стабильная версия плеера на текущий момент является версия 3. Именно она будет использована в проекте.



      Интерфейс плеера vlcj с открытыми дополнительными окнами

      Преимущества vlcj плеера:

      • огромное количество поддерживаемых форматов видео, что является давнишней особенностью плеера VLC;
      • Java как ЯП, что позволяет открывать плеер на большом количестве операционных систем (в данном случае мы ограничены лишь реализацией VLC плеера, который неразрывно связан с java приложением).
      • устарелый дизайн плеера, который решается собственной реализацией интерфейса;
      • перед использованием программы требуется установка VLC плеера и Java версии не ниже 8, что определенно тянет на недостаток.

      Главный минус библиотеки Yapi состоит в том, что ни одной его версии не присутствует в репозитории Maven, так что перед компиляцией кода проекта требуется вручную установить Yapi в локальный репозиторий (вся установка описана в README файле в репозитории).

      Алгоритм анализа изображения

      Принцип работы динамического освещения будет основан на периодическом цветовом анализе текущего кадра.

      В результате этапа проб и ошибок был разработан следующий принцип анализа картинки:

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

      Это необходимо для быстродействия алгоритма, ради которого мы можем пожертвовать некоторой точностью определения цвета. Также это необходимо для того, чтобы максимально снизить зависимость времени обработки изображения от разрешения текущего медиафайла.

      Далее алгоритм разбивает получившееся изображения на четыре «базовые» зоны (левая верхняя, левая нижняя и т.д.) размером 10x10 пикселей.



      «Базовые» зоны

      Такой механизм реализован для обеспечения независимого анализа разных зон изображения, что позволяет в дальнейшем поставить осветительный прибор в определенном месте комнаты и указать какую зону изображения ему необходимо «отслеживать». При использовании программы с несколькими лампами этот функционал делает динамическое освещение намного атмосфернее.

      Затем для каждой зоны изображения высчитывается средний цвет путем вычисления среднего арифметического отдельно для трех составляющих цвета (красного, зеленого, синего) каждого пикселя и компоновки получившихся данных в единственном значении цвета.

      Благодаря четырем получившимся значениям мы можем:

      • вычислить средний цвет 5 следующих зон: правой, левой, верхней, нижней и центральной зоны экрана (реализовано через вычисление среднего арифметического цвета включенных в искомую область «базовых» зон);
      • вычислить среднюю яркость выбранной зоны в процентах по формуле:

      Весь код по обработке изображения вмещается в один класс ImageHandler:

      Для того, чтобы частые мерцания лампы не раздражали глаз, был введен порог изменения параметров. Например, лампа изменит значение яркости только если текущая сцена фильма будет более чем на 10 процентов ярче предыдущей.

      Cравнение с другим методом анализа

      Вы можете спросить: «Почему бы просто не уменьшить изображение до размера 2x2 пикселя и не считать полученные значения?».
      Ответ будет таков: «Исходя из проведенных мною опытов, алгоритм определения среднего цвета через уменьшение размера изображения (или его зон) проявил себя менее стабильно и менее достоверно (особенно при анализе темных участков изображения), чем алгоритм, основанный на определении среднего арифметического всех пикселей».

      Были испробованы несколько методов изменения размера изображения. Можно было воспользоваться библиотекой openCV для более серьезной работы с изображением, однако я посчитал это оверинженерингом для данной задачи. Для сравнения, ниже представлен пример определения цвета с помощью встроенного быстрого скейлинга класса BufferedImage и вычисления среднего арифметического цвета. Думаю комментарии излишни.


      Конфигурирование

      На текущий момент программа конфигурируется при помощи файла формата json. В качестве библиотеки для парсинга конфигурационного файла использована JSON.simple.

      Json файл необходимо назвать «config.json» и положить в одну папку с программой для автоматического определения конфигурации, иначе при включении функции адаптивной яркости программа предложит самостоятельно указать файл конфигурации, открыв окно выбора файлов. В файле необходимо указать ip адреса осветительных устройств, «отслеживаемые» зоны изображения для каждого девайса, коэффициенты яркости и температуры цвета, либо период их автоматической установки (о чем будет описано в следующем пункте). Правила заполнения json файла описаны в README файле проекта.



      Все изменения в интерфейсе (кнопка лампочки). При нажатии кнопки применится доступный файл конфигурации или откроется окно его выбора

      Коэффициенты необходимы для более четкой настройки анализа изображения, например, чтобы сделать лампу чуть темнее или, наоборот, светлее. Все эти параметры не являются обязательными. Единственным обязательным параметром здесь являются значения ip адресов осветительных приборов.

      Автоматическое выставление коэффициентов


      Также в программе реализована функция автоматической подстройки коэффициентов в зависимости от текущей освещенности комнаты. Происходит это так: веб-камера вашего ноутбука с выбранной периодичностью делает снимок окружения, анализирует его яркость по уже описанным алгоритмам, и далее выставляет коэффициент по формуле:

      где x – текущее значение яркости комнаты в процентах.

      Включается эта функция с помощью прописывания специального тега в конфигурационном файле.

      Пример работы функционала

      Заключение

      В результате решения поставленной задачи был разработан функционал, позволяющий использовать умные лампы Yeelight в качестве адаптивной подсветки медиафайлов. Дополнительно была реализована функция анализа текущей освещенности комнаты. Весь исходный код доступен по ссылке в моем репозитории github.

      Читайте также: