Робот-пылесос Ecovacs Deebot R98

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

Ответить
Vip
Сообщения: 86
Зарегистрирован: Вт авг 28, 2012 5:36 pm
Откуда: Kiev, Ukraine
Благодарил (а): 4 раза
Поблагодарили: 14 раз

Робот-пылесос Ecovacs Deebot R98

Сообщение Vip » Сб окт 05, 2019 12:09 am

Доброй ночи!
Приобрёл себе помощника для поддержания чистоты в доме.
deebot-dr98.jpg
deebot-dr98.jpg (49.95 КБ) 2723 просмотра
Удалось добавить основные статусы и команды управления роботом Ecovacs Deebot R98 в Majordomo. Должно работать и на других моделях производства компании Ecovacs. Важно, у меня Majordomo крутится на RaspberryPi соответственно все настройки интеграции выполняются на ней.

Поддерживаются функции:
1. Получение статусов работы пылесоса (статус зарядки, уровень батареи, статус уборки) в виде свойств объекта Majordomo
2. Управление пылесосом (автоматическая уборка, остановить уборку, отправить пылесос на зарядную станцию) в виде значения свойства command

Транспорт данных осуществляется через MQTT при помощи сервиса на RaspberryPi
Базовый скрипт на питоне: https://github.com/wpietri/sucks
MQTT шлюз: https://github.com/guillebot/openhab-sucks

Добавил пошаговое описание, что нужно делать для повторения результата.
СпойлерПоказать
Первым шагом нужно выполнить обновления пакетов на RaspberryPi, так как установка sucks падала с ошибкой пока этого не сделал:
sudo apt-get update
sudo apt-get upgrade

теперь можно устанавливать базовый скрипт:
pip3 install sucks
предполагается что третий питон у вас уже установлен

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

Возвращаемся в RaspberryPi и выполняем конфигурацию sucks:
sucks login
в консоле появится запрос на ввод имейла, а потом и пароля от учётной записи. После будет запрошен код страны и континента, например ua страна Украина, континент Европа - eu.

На этом этапе можем протестировать управление пылесосом из консоли:
sucks clean 1 - отправит пылесос на автоматическую уборку в течении 60 секунд
sucks stop - остановит уборку

На этом конфигурация базового скрипта закончена. Переходим к настройке MQTT шлюза.

Устанавливаем mqtt-клиента, через которого будем отправлять на MQTT-сервер данные и принимать команды:
pip3 install paho-mqtt python-etcd

После этого клонируем ветку https://github.com/guillebot/openhab-sucks
git clone https://github.com/guillebot/openhab-sucks
Получаем папку с проектом openhab-sucks, в которой нас интересует только скрипт из папке scripts/ecovacs-mqtt-gateway.py

вносим в него изменения на строке
mqttclient.connect("192.168.1.2", port=8884, keepalive=60,bind_address="")
заменяем на
mqttclient.username_pw_set("Vip", "")
mqttclient.connect("192.168.1.200", port=1883, keepalive=60,bind_address="")
где первая строка содержит логин и пароль к MQTT серверу
вторая строка содержит адрес и порт MQTT сервера
сохраняем и выходим.

теперь необходимо скопировать это скрипт например в папку /home/pi/ecovacs-mqtt/ecovacs-mqtt-gateway.py
и создать сервис для его запуска по адресу: /lib/systemd/system/ecovacs-mqtt-gateway.service
следующего содержания:

[Unit]
Description=Ecovacs MQTT Gateway
Requires=network.target

[Service]
Type=simple
Restart=on-failure
User=pi
Group=dialout
#WorkingDirectory=/home/pi/ecovacs-mqtt
ExecStart=/usr/bin/python3 /home/pi/ecovacs-mqtt/ecovacs-mqtt-gateway.py

[Install]
WantedBy=multi-user.target

далее запускаем сервис:
sudo systemctl daemon-reload
sudo systemctl enable ecovacs-mqtt-gateway.service
sudo systemctl start ecovacs-mqtt-gateway.service
Также можем убедится что он успешно запустился в статусе Active(running):
sudo systemctl status ecovacs-mqtt-gateway.service

Далее переходим в Majordomo и в модуле MQTT, который уже должен быть настроен на ваш MQTT сервер, подписываемся на ещё одну тему
ecovacs/#
Это позволит получать все данные о пылесосе и передавать в него команды.
За это сообщение автора Vip поблагодарили (всего 2):
Step40 (Сб окт 05, 2019 7:03 am) • Divan (Сб окт 05, 2019 2:42 pm)
Рейтинг: 2.33%
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: Робот-пылесос Ecovacs Deebot R98

Сообщение Divan » Сб окт 05, 2019 2:50 pm

Все хорошо, пылесос хороший и управлять можно с MD, но есть жирный минус, это цена, отдавать за него 50000 - 60000 рублей, это перебор, логичнее взять Xiaomi Mi Robot Vacuum Cleaner за 15000 рублей и управлять его через модуль Xiaomi miIO (xiaomimiio)
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
Vip
Сообщения: 86
Зарегистрирован: Вт авг 28, 2012 5:36 pm
Откуда: Kiev, Ukraine
Благодарил (а): 4 раза
Поблагодарили: 14 раз

Re: Робот-пылесос Ecovacs Deebot R98

Сообщение Vip » Пн окт 07, 2019 12:11 am

Divan писал(а):
Сб окт 05, 2019 2:50 pm
Все хорошо, пылесос хороший и управлять можно с MD, но есть жирный минус, это цена, отдавать за него 50000 - 60000 рублей, это перебор, логичнее взять Xiaomi Mi Robot Vacuum Cleaner за 15000 рублей и управлять его через модуль Xiaomi miIO (xiaomimiio)
Мне повезло купить его за сумму эквивалентную 10000 рублей. Что не так уж далеко от стоимости Xiaomi, но с функцией автоочистки + наличие ручного пылесоса для мебели.
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: Робот-пылесос Ecovacs Deebot R98

Сообщение Divan » Пн окт 07, 2019 1:13 am

Да я сам за такие деньги купил бы. Если не секрет, где вы взяли за такую сумму? Однозначно этот пылесос лучше, чем xiaomi.
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
Vip
Сообщения: 86
Зарегистрирован: Вт авг 28, 2012 5:36 pm
Откуда: Kiev, Ukraine
Благодарил (а): 4 раза
Поблагодарили: 14 раз

Re: Робот-пылесос Ecovacs Deebot R98

Сообщение Vip » Пн окт 14, 2019 9:06 pm

Распродажа у диллера была. Забрал последний)
Ответить