345

Домофон на ESP

Наверное любой кто занимался "умнизацией" своего жилища, задумывался или даже сделал "умный" домофон, а точнее своё абонентское устройство координатного домофона в квартире. Я не стал исключением и тоже решил сделать своё.

Почему своё, а не уже придуманное кем-то? Всё потому что: 1. Идеи заложенные в уже придуманные немного не входили в мои планы, и не все функции реализованы. 2. Как-то колхозно всё реализовано и с большими вопросами к элементной базе и габаритам устройств.

Итак, чего же тебе не хватает, сабака? - Все придуманные варианты, которые я смог найти в этих ваших интернетах:

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

2. Использовали куеву тучу реле и/или оптопар.

Тоесть: Берём несколько реле и подпаиваем их выходы к геркону - для эмуляции снятия трубки, к кнопке - для открытия, еще реле к линии зачем-нибудь. Оптопару на линию для детекции (это понятно), и прочее прочее... Фу так делать. Схема получается хоть и простая, но габаритная.

3. Никто не реализовал передачу аудио сигнала на блок вызова.

В связи с этим, мои требования были такие:

1. Устройство (печатная плата) должна влезать в обычную монтажную телефонную коробку. Это значит что сразу готовый корпус, а также подключение линии и телефона можно выполнить нормальным способом, а не так как "было" - на соплях примотали толстую медную лапшу на тонкую многожилку провода трубки. Провод трубки обжимается разъемом RJ11, вставляется в розетку девайса, а там нормально клеммами прижимается к плате.

2. Передача аудио сигнала на блок вызова.

3. Минимально возможное использование релюх или оптопар.

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

Начинаю шуршать схемы трубок. И после детального изучения принципов работы, что и за что отвечает - делаю вывод: Все схемы трубок координатных домофонов идентичны где-то на 90% как бы по разному из не рисовали. Беру за основу ту. которая мне показалась наиболее удобна для понимания.

И начинаем в ней разбираться. Геркон не надо, Динамик не надо, значит "схему его обвязки" тоже не надо. Резисторы 100-ки не надо, тумблер тоже.

Кнопка открытия... Зачем там люди реле ставят?... транзистор же нужен.

Микрофон... Как подать сигнал. Да просто. Микрофон электретный, а значит это по сути транзистор. Вот и поставим туда транзистор, только через 10 кОм, что бы сигнал по громкости не завалило. Немного поколдовав схему в ИзиИдея получаем:

Далее, детектор линии. Тут без оптопары не обойтись. Ну на схеме трубки есть диод индикации через 10кОм, делаем аналогично. Вход на светодиод, Выход на ногу ESP.

Теперь, как ни крути, но одно реле понадобится. Задача которого состоит в том, чтобы  в выключенном состоянии коммутировалась на линию трубка, а во включенном наша схема. Я долго пытался найти решение как тут отказаться от реле, но всё сходилось к тому, что если нет питания, никакой коммутации не будет, т.е. если устройство по какой-либо причине не запитано, то домофон вообще не работает. Эх ладно, пусть будет одно реле =( к счастью нашлась одна миниатюрная релюшка от OMRON.

Теперь задача самая весёлая. развести всё это хозяйство и нужные габариты. Очень маленькие габариты. Разводим, заказываем, паяем, получаем:

Моя система умного дома - это HomeAssistant. Значит писать будем под ESPHome. (MQTT-шники, лишний брокер - это ваш выбор. Мой выбор ESPHome).

Всё бы было хорошо, если бы ни два НО:

1. Хоть маленькая заметка о том как воспроизвести звук на ESPHome используя библиотеку ESP8266Audio и есть, но она не работает, а точнее, там много не описано и досказано. Пришлось додумывать самому.

2. Ни одной статьи как использовать LittleFS в ESPHome нет. Пришлось всё решать самому.

Как итог:

Прошивка написана, всё работает как и положено.

В HomeAsistant карточка выглядит так:

А поскольку у меня имеется аж 2 Алиса-станции мини, и они умеют взаимодействовать с этой системой, то и домофоном теперь можно управлять голосом.


Ссылка на прошивку: https://github.com/SCratORS/SmartIntercom

Если у Вас тоже есть вопросы как работать с LittleFS и воспроизводить из нее Аудио файлы в ESPHome - Это для Вас.

Ссылка на схему: https://easyeda.com/scrators/intercom


Спасибо за внимание. Надеюсь кому-нибудь пригодится

Arduino & Pi

1.5K постов20.9K подписчика

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

• Нарушать установленные правила Пикабу

Вы смотрите срез комментариев. Показать все
20
Автор поста оценил этот комментарий

Сейчас делаю нечто похожее, но чуть умнее.

Домофон не работает с 23.00 до 07.00 по будням и до 09.00 по выходным.

При звонке в домофон играет запись Алисы "Здравствуйте, пожалуйста, четко представьтесь"

-> Если кто-то из взрослых есть дома колонки алисы сообщают "К вам пришел %имя_представившегося%, открыть дверь?"

-> тот кто дома отвечает да или нет

-> дверь открывается или звонящему сообщается "мы вас не ждем, всего хорошего"

Так же добавлено "кодовое имя" (что-то типа "пузатый генерал 90210"), на который HAss сам открывает дверь.

раскрыть ветку (18)
5
Автор поста оценил этот комментарий

Не забудь постик сделать. Очень интересно посмотреть как будешь оцифровывать сигнал с домофона и передавать алисе =)

раскрыть ветку (10)
3
Автор поста оценил этот комментарий

Пост не обещаю. А вот оцифровывать сигнал - проще простого. Вот одна из статей, при помощи которой добился результата. https://esp8266.ru/forum/threads/zapis-audio-s-mikrofona.432...

А дальше эти данные через пост передаются на сервис гугла уже при помощи этой статьи: https://mikepultz.com/2011/03/accessing-google-speech-api-ch...

еще был пример на хабре, но его в закладках почему-то не осталось

раскрыть ветку (9)
1
Автор поста оценил этот комментарий

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

Дальше проблема в том, что блок вызова держит вызов 40 сек. (примерно), затем сбрасывает. Т.е. пока Алиса спросит "кто пришёл", пока посетитель ответит кто он, пока ты снимешь данные, отправишь в гугол для получения текста, обработаешь, пока Алиса тебе всё это скажет, кто пришёл, пока ты ей ответишь... можно и не уложиться в это "окно"....

раскрыть ветку (2)
0
Автор поста оценил этот комментарий

У меня бОльшая часть управления построена на реле, поэтому просто размыкаю "геркон" и с аналогово порта читаю напряжение.

Время обработки речи занимает не больше секунды, вывод на алису так же 2-3 секунды. Поэтому проблем с внезапной потерей связи нет.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ну тогда вопросов нет... С реле то оно не сложно.

0
DELETED
Автор поста оценил этот комментарий
А что уже можно с навыка Алисы внезапно начать говорить? Чёт не нашёл когда искал такой функции.
раскрыть ветку (5)
0
Автор поста оценил этот комментарий
Yandex.station для hacs для home assistant позволяет
раскрыть ветку (4)
0
DELETED
Автор поста оценил этот комментарий
Не думаю что там специфичное апи, такое же как и у меня :) надо посмотреть ещё раз доку, может добавили
0
DELETED
Автор поста оценил этот комментарий
Помогли найти исходники, не официально все это. Но лучше чем ничего, поковыряю)
раскрыть ветку (2)
1
Автор поста оценил этот комментарий

script:

yandex_tts1:

alias: "Температура в зале"

sequence:

- service: tts.yandex_station_say

entity_id: media_player.yandex_station_ff98f029a7d780b0c8ef1e77

data_template:

message: Температура в большой комнате {{ states("sensor.mi_air_purifier_temperature")|round }} градуса, влажность {{ states("sensor.mi_air_purifier_humidity")|round }} процента.

раскрыть ветку (1)
0
DELETED
Автор поста оценил этот комментарий
Да, только у меня своя реализация :) буду добавлять...
0
Автор поста оценил этот комментарий
Добрый день?
Реализовали?
если да, можно кратко/разжованую инструкцию для нуба)
только осваиваю ХА)
раскрыть ветку (4)
0
Автор поста оценил этот комментарий

Пока в более скучном виде. Просто алиса спрашивает "открыть дверь или нет", так как не смог нормально обработать сигнал с домофона, очень тихо и много помех.
А в остальном все просто. ESP home, пара реле, пара компараторов, hass+hacs+yandex.station

Инструкцию напишу когда-нибудь, когда время появится все провода привести в порядок, убрать мусор из кода и с текущей работой появится свобода

раскрыть ветку (3)
0
Автор поста оценил этот комментарий
Ок, спасибо и на этом)
0
Автор поста оценил этот комментарий
А куда и как обрабатываешь сигнал? Еспхоум ведь не умеет, да и что с этим сигналом делать?
раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Выше писал, как записываю и как отправляю в гугл
0
Автор поста оценил этот комментарий

Ну как, получилось?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Не-а. Не в полной реализации. Домофон включается и выключается, на звонок отвечает, голосом Алисы запрашивает имя, но api распознавания речи Яндекс сильно ограничил, надо было закинуть много денег на огромный пакет, который мне не нужен в таком количестве. Поставил на паузу.
а потом обещали поменять домофон, да так и обещают два года
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества