Автоматизация зарядки электромобиля через Home Assistant
У меня на подземном паркинге имеется два парковочных места и зарядные устройства. В этом лонгриде постараюсь рассказать как я делаю эти маленькие объекты недвижимости чуть «умнее».
Меня зовут Владислав Иващенко. В свободное от работы время увлекаюсь темой умного дома. Пытаюсь автоматизировать всё, до чего дотягиваются руки. Свои первые датчики и шлюз Xiaomi купил в 2017 году. Буду рад поделиться опытом.
Про паркинг
У меня два машиноместа на самом стандартном подземном паркинге в многоквартирном доме в спальном районе Санкт-Петербурга.
Первым парковочным местом пользуется супруга для гибрида Volvo. И там стоит две зарядки Type2: одно «глупое» – просто заряжает до талого когда вставляешь пистолет в авто (изначально установил по незнанию, позже уже докупил второй вариант), а второе умнее – прокинуто в Home Assistant и им можно управлять по собственным правилам.
И на другом парковочном месте ещё одна зарядка GB/T, где я заряжаю свой полностью электрический Zeekr.
На скриншоте – моя панель Home Assistant, посвящённая паркингу. На главном экране информация по трём зарядным устройствам, а также можно провалиться по бейджам для дополнительных функций, о которых я расскажу ниже.
Электричество
С 2020 года у меня в семье присутствовали подключаемые гибриды от Volvo. А в конце 2023 я решил, что нужно озадачиться и провести электричество на паркинг, чтобы заряжать автомобиль супруги.
Это, конечно, был тот ещё квест, достойный отдельного поста, но в итоге всё получилось: в августе 2024 у меня на паркинге появился свой электрощит с выделенной мощностью 15 кВт (3 фазы по 5 кВт), своим счётчиком и первой не очень умной зарядкой Type2.
Интернет
Сразу, конечно, встал вопрос интернета на парковочном месте. Мой мобильный оператор, Yota, в паркинге не ловил совсем.
Поскольку паркинг – помещение нежилое, то провести туда проводного провайдера стоит каких-то космических денег, ну и тарифы потом соответствующие.
В итоге были приобретены симки всех операторов с самыми дешёвыми тарифами для теста. Итоги теста показали, что Билайн на моём парковочном месте имеет лучший сигнал из всех.
Сначала я просто воткнул роутер Keenetic с модемом ZTE MF79N и маленькими выносными антеннами, но связь всё равно не всегда была достаточно стабильной, поэтому позже поменял на модем Vertell с MIMO-антенной – и теперь у меня стабильно 40 Мбит на приём и 20 Мбит на передачу, чего мне с лихвой хватает.
Тариф, кстати, у Билайна получился очень даже выгодный. Тариф up с 2 Гб интернета и без звонков стоит 150 рублей в месяц, а если покопаться в услугах, то сейчас у Билайна можно найти бесплатную опцию на 1 Тб трафика на год.
В итоге за 150 рублей в месяц у меня на паркинге 2+83,5=85,5 Гб трафика ежемесячно – более чем достаточно для моих целей.
Локальная сеть
Поскольку сервер Home Assistant установлен в квартире, связал домашний Keenetic с парковочным через IPSec VPN – настраивается несложно, главное использовать разные подсети на роутерах, чтобы не было конфликтов.
В моём случае в квартире используется стандартная подсеть 192.168.1.x, а на паркинге – 192.169.1.x.
Если не объединять локальные сети, то те интеграции в Home Assistant, которые работают локально (а это почти все нормальные) – работать не будут, а будут только облачные интеграции (а это, конечно, зло).
Второе парковочное место
Когда у меня появилась зарядка, я чего-то психанул и купил себе полную электричку – Zeekr 001. Посмотреть что это такое. Свою BMW я всё-таки не продал, летом преимущественно езжу на бензине, а вот зимой больше комфорта даёт Zeekr.
Соответственно, нужно было протянуть и электричество, и интернет на второе парковочное место, которое расположено примерно в 150 метрах по паркингу от первого.
Сначала пытался заново начать всю тягомотину с подключением мощностей через Петроэлектросбыт, но в итоге плюнул и просто одну из трёх фаз первого парковочного места протянул вместе с оптоволокном до второго места.
Всё равно почти все современные электрички и тем более гибриды оборудованы однофазным трансформатором, так что смысла в трёх фазах особого нет, хватит одной фазы на каждое парковочное место. Получается, ещё одна фаза у меня в запасе свободная.
Зато по срокам это удалось реализовать за пару недель, а не за почти год, как в случае с подключением первого паркоместа.
Тарифы на электричество
У меня двухтарифный счётчик электричества, то есть ночью с 23:00 до 07:00 электроэнергия дешевле, чем днём. Текущие тарифы:
Для мониторинга расхода электричества после счётчика от энергосбытовой компании подключен энергомонитор Shelly Pro 3EM, он без проблем прокидывается в Home Assistant штатной интеграцией.
Поскольку каждое парковочное место висит на отдельной фазе, то легко считать не только общее потребление, но и разделять по паркоместам, как видно на скриншоте.
С помощью штатного функционала HA utility_meter считаю потребление день/ночь, ну и сразу можно помножить на рубли.
Нехитрым шаблоном добавив стартовые значения счётчика в момент подключения utility_meter можно высчитать показания счётчика для передачи в энергосбытовую компанию, чтобы не лазить в щит каждый месяц:
А автоматизация раз в месяц пришлёт в Telegram показания для передачи вместе со ссылкой для входа в личный кабинет, а потом напомнит оплатить: ПСК долго формирует «счета», поскольку паркинг считается нежилым помещением и с ним работает отдел по работе с юрлицами, который формирует оплаты вручную.
Про зарядку Volvo
Для зарядки гибрида у меня стоит простое зарядное устройства Shuko-Type2 из экосистемы Tuya, прокинутое в Home Assistant через local_tuya.
Можно использовать Xtend Tuya (он тоже работает локально), но я по старинке предпочитаю local_tuya, чтобы не полагаться на сторонних разработчиков – local_key и все нужные мне объекты настраиваю самостоятельно. А ещё Xtend Tuya может иногда конфликтовать с облачной Tuya, в итоге какие-то объекты могут остаться только в облачном исполнении.
С зарядкой гибрида всё просто. Там маленькая батарея 10 кВтч, поэтому логика простая: с 23:00 до 06:59 заряжаем минимальным током – даже 8А хватит, чтобы полностью зарядить батарею за 8 ночных часов.
Если зарядка подключена с 07:00 до 16:59, то сразу заряжаем максимальным током – высока вероятность, что автомобиль может потребоваться для вечерней поездки.
Ну а при подключении зарядки после 17:00 – просто ждём активации зарядки по ночному тарифу в 23:00, потому что маловероятно, что автомобиль куда-то ещё поедет.
При этом оставляем вариант ручного старта зарядки – на случай отклонения от стандартных сценариев использования.
Автоматизация нехитрая – настраивается за 10 минут через веб-интерфейс.
Уведомления
В работе своего умного дома я придерживаюсь принципа: всё должно работать с минимальным ручным вмешательством, а о важных вещах лишь уведомляем. Например, у меня настроены уведомления о подключении зарядки:
А также о старте и окончании зарядки:
При этом у меня есть 4 вида уведомлений: замьюченные в общую группу (как эти, например), обычные в общую группу (когда звонят в домофон или дверь), срочные (звонок на телефон через HA Companion App + дозвон на телефон через Яндекс Алису), а также некоторые системные уведомления шлю напрямую себе в личку, а не общую группу.
Забыли подключить зарядку (телефон супруги появляется в домашней сети, но зарядка не подключена) – отлично, шлём уведомление 🙃 Благо супруга уже научена всегда подключать зарядку, поэтому такие уведомления случаются крайне редко.
Про зарядку Zeekr
С полной электричкой дела обстоят уже хитрее, ведь батарея тут целых 100 кВтч. При просто ночной зарядке с 23 до 7 «залить» в машину при ограничении на фазу в 5 кВт удастся не более 40 кВтч (а с учётом потерь и того меньше), чего не всегда может хватать.
А ещё хорошо бы не только успеть полностью зарядить машину по ночному тарифу, но и сделать это минимальным возможным током, чтобы снизить тепловые потери, нагрузку на кабели и трансформатор автомобиля.
Поэтому логика следующая:
- Ночью используем минимальный достаточный ток, чтобы успеть зарядиться к 07:00.
- Днём включаем зарядку только в том случае, если по расчётам не успеем зарядиться ночью.
В моём случае нужно также учесть потерю напряжения, ведь второе парковочное место находится в 150 метрах от первого, где стоит первичный электрощит и счётчик от энергосбытовой компании, плюс потери возникают на встроенном в электромобиль трансформате AC->DC. У меня потери от автомата до батареи на практике составляют чуть больше 20%.
Оборудование тут тоже чуть серьёзнее: речь уже не про 16-амперную бытовую розетку, а 32-амперная версия с силовой розеткой. Но всё так же Tuya с прокидкой в Home Assistant через local_tuya.
Для тех, кто хочет повторить или лучше понять логику работы, ниже полный код автоматизации. Он выглядит сложным, но по сути это просто набор условий (if/else). Главное – правильно подставить названия своих сущностей (entities).
Благодаря этой автоматизации утром у меня всегда заряженный электромобиль по минимальному возможному тарифу и минимальным возможным током.
Посчитаем экономию
Обычно я трачу около 30 кВтч в день и возвращаюсь домой в около 18:00. Если начинать зарядку сразу, то 5 часов зарядка будет идти по дневному тарифу и ещё около 2,5 часов по ночному.
Если заряжаться таким образом 20 дней в месяц, то счёт за электричество составит 4 058 рублей. А если перейти на полностью ночную зарядку – уже 2 610 рублей. Экономия – 1 448 рублей в месяц.
К слову, на бензин для летней BMW со схожими динамическими характеристиками, таким же режимом вождения и месячным пробегом – трачу примерно раз в 6-8 больше денег.
Интеграция автомобилей в Home Assistant
Надо отметить, что мой умный дом знает текущий уровень заряда батареи электромобиля, благодаря чему и возможна умная зарядка.
В моём случае у меня на Зикре установлена сигнализация Пандора – и с помощью HACS-интеграции все данные с шины передаются в Home Assistant:
Помимо использования для автоматизации зарядки, это даёт и другую пользу: считаю расход на 100 км пробега, можно открывать / закрывать машину удалённо и т.д. Да и просто нативное приложение у Пандоры мне нравится меньше, чем интерфейс Home Assistant.
Сейчас есть интеграции и для Пандоры, и для Старлайна. И, конечно, для штатных блоков удалённого управления и мониторинга от производителей.
У меня в Home Assistant также были заведены BMW через ConnectedDrive и Volvo через Volvo On Call, но оба перестали работать в России, к сожалению. Вроде Роскомнадзор блокирует то ли протоколы, то ли запросы к иностранным серверам 🤷♂
На сегодняшний день и в наших реалиях самый надёжный способ интегрировать машину в умный дом – поставить российскую сигнализацию.
Камеры
Куда же без них. У меня стоят недорогие камеры от IMOU – это саббренд Dahua, более ориентированный на частных, а не корпоративных пользователей.
В Home Assistant камеры прокинуты через ONVIF. Из плюсов – у IMOU есть также облачная интеграция, которая позволяет автоматизировать перезагрузку камер через облако, если ONVIF сбоит (а такое иногда случается при нестабильном соединении).
По обнаружению движения записываю потоки с камер и шлю в отдельный чатик в Telegram, где хранится архив записей за все годы.
Также использую снапшоты с камер для разных уведомлений (уже можно было заметить выше). И получаю оперативные уведомления, если кто-то трётся у машиноместа.
Для этого с помощью штатной интеграции history_stats мониторю сколько секунд был активен сенсор движения камеры за последние 5 минут. Если больше 180 и никто из домашних не подключен к вай-фаю – то сразу шлём последнее записанное видео с уведомлением.
Можно оперативно прогонять детей, балующихся на паркинге 🙃 Ну или оперативно узнавать о каких-то менее безобидных вещах (не мониторя постоянно чат с проезжающими мимо автомобилями или проходящими мимо людьми).
Итого
Большинство, наверное, скажет, что это всё баловство. Но кому-то, надеюсь, будет полезно: в сети вообще не так много информации о реальных практических кейсах, используемых решениях, интеграциях и автоматизациях.
Ну и ещё я иногда пишу в свой маленький уютный канал про умный дом, если эта тема вам интересна.