DivanX10

<<< Назад

Пылесос Xiaomi Mi Robot Vacuum

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

Скачать готовую настройку класса и объекта пылесоса для импорта в MD можно здесь
Скачать полные настройки (класс и объекты, меню управления и сцена) для MD можно здесь
Скачать иконки пылесоса можно здесь. Иконки нарисованы в векторе, открывать в CoralDraw. Можно передалать их по своему вкусу и экспортировать в png. При экспорте указать размер пикселей, я выбрал для себя 28pix и разрешение 72dpi.
Обзор иконок

Скачиваем и устанавливаем программу Bluestack, можете и на телефон поставить, но мне удобнее было скопировать координаты в блокнот через Bluestack.
Скачиваем и устанавливаем программу FloleVac Now
Выбираем импорт из MiHome

Указываем логин\пароль от Mi Home

Переходим в раздел карты и еще раз указываем логин\пароль от Mi Home и выбираем сервер как в MiHome

Переходим в раздел карты. Перед тем, как будем выбирать зоны, сначала должна быть построена карта. Выделяем зону уборки. Потом нажимаем и удерживаем кнопку "Очистить зону" до тех пор, пока не появится сообщение "Координаты скопированы". Больше 5-ти зон не удаться сделать, но можно выделять одну зону и копировать координаты и так можно делать бесконечно.

На основе полученных координатах можно создавать свои сценарии или методы, кому как удобно. Пример списка сценарии

Создаем сценарии и вписываем такой код с координатами.

Формат команды для zoned_clean:
либо одна зона [zone1], либо список зон [zone1],[zone2],...
[x1 Integer, y1 Integer, x2 Integer, y2 Integer, times Integer]
[26234,26042,27284,26642,5] - убрать одну зону 5 раз
[26234,26042,27284,26642,1],[26232,25304,27282,25804,2],[26246,24189,27296,25139,3] - убрать три зоны

Формат команды для goto_target:
[x Integer, y Integer]
[24200,20200]

Для примера, свои координаты обнулил, а так вместо этих координат вы можете вставить свои координаты. Можно вставить в одной комнате до 5-ти зон.

setGlobal('Xiaomi_MiRobotVacuum.ZonedClean', '[00000,00000,00000,00000,1],[00000,00000,00000,00000,1]');

Как управлять пылесосом?
Управление пылесосм происходит отправкой через свойство command:
app_start - начать уборку;
app_stop - остановить уборку;
app_pause - приостановить уборку;
app_spot - прибрать участок вокруг пылесоса;
app_charge - отправить на базу и встать на зарядку;
find_me - посигналить, чтобы найти пылесос.

Само свойство command

Полный список команд можно посмотреть здесь

Описание метрик пылесоса
1)filter_work_life - уход, через сколько времени нужно будет заменить фильтр
2)map_present - Карта построена или нет 1 или 0
3)in_cleaning - запуск уборки
4)fan_power - мощность всасывания
5)dnd_enabled - режим "Не беспокоить"
6)custom_mode - режим уборки (Тихий, Сбалансированный, Турбо, Полная скорость)
7)sensor_dirty_life - очистка датчиков после 30 часов
8)clean_time - сколько времени затрачено на последнюю уборку
9)filter_work_time - через который промежуток времени нужно заменить фильтр
10)battery - уровень заряда
11)side_brush_work_life - индикатор времени работы боковой щетки, где через 200 часов нужно ее заменить
12)main_brush_work_life - индикатор времени работы основной щетки, где через 300 часов нужно ее заменить
13)state - цифровое обозначение состояния пылесоса
14)state_text - тестовое сообщение состояния пылесоса
15)online - статус сети

Пример того, что означают цифры state
Обозначение свойства "state"
Zoned cleaning|Зональная уборка - state 17
Charging|Зарядка - state 8
Back to home|Обратно на базу - state 6
Spot Cleaning|Чистка точки - state 11

Обозначение свойства "state_text"
Cleaning - Уборка
Zoned cleaning - Зональная уборка
Charging - Заряжается
Sleeping - Спит
Waiting - Ожидание
Pause - Пауза
Back to home - Обратно на базу
Going to target - Идет к указанной точке
Spot Cleaning - Чистка в указанной точке

Так выглядит мое меню управления пылесосом

Боковое меню

Всплывающее меню

Чтобы иконки менялись по статусу пылесоса, я в сценах выбрал изображение и присвоил каждому состоянию состояние устройства

Обсуждение (31) (15)

Смотрите так же:
26.03.2020 Дизайн сцена "Вид на землю"
26.03.2020 Дизайн сцена "Оранжевый бриз"
14.03.2020 Дизайн сцена для управления кондиционером
01.03.2020 Создаем сцену для пылесоса Xiaomi Mi Robot Vacuum
21.10.2019 Блог чайника. Простое устройство. Выключатель.
21.10.2019 Блог чайника. Блокировка ночного режима.
12.10.2019 Blockly. Вариант 2 - Адаптивный "Ночной режим"
12.10.2019 Blockly. Вариант 1 - Если я ушел из дома, а "Ночной режим" еще не выключен
11.10.2019 Blockly. Режим "Кто-то дома" | "Дома никого нет" | "Дома спят"
08.10.2019 Blockly. Рабочий/выходной/отпуск - немного укоротил сборку кода в блоках
07.10.2019 Blockly. Создаем сценарии рабочий/выходной/отпуск для нестандартного рабочего графика
12.10.2019 Blockly. Мои блоки - месяц
12.10.2019 Blockly. Мои блоки - дни недели

Москва, Россия