• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Вопрос Deep sleep с пробуждением по кнопке

Zhenya88

Member
@Сергей_Ф
К сожалению, нужен и таймер, чтобы понимать, что датчик жив, а не завис, потому буду через rst думать. Я просто прочитал, что люди и по таймеру и по кновке сделали, я также хочу настроить (только вместо кнопки датчик).
 

Сергей_Ф

Moderator
Команда форума
@Zhenya88
Если надо периодически включать чтобы проверить что датчик живой, то тогда RST и GPIO16 и добавить схему монтажное или на RST (говорил об этом выше
Вам об этом уже сказали. "Монтажное или" - это два диода на разные источники прерывания. Один на gpio16 для выхода из сна, другой на RC-цепь с датчика. Тут уже без RC-цепи не обойтись, поскольку нужен импульс, а не уровень, как для EN.
 

Zhenya88

Member
@Сергей_Ф
Буду RC городить.
Я сам датчик(именно датчик) проверять не планирую особо. Интресует возможность раз в сутки проссыпаться и отправлять состояние ESP и принимать информацию (обновления/таймеры).
Потом аналогично планирую датчики температуры и т.п. собрать, потому хочетсч сразу разобраться.
 

nikolz

Well-known member
@Сергей_Ф
Буду RC городить.
Я сам датчик(именно датчик) проверять не планирую особо. Интресует возможность раз в сутки проссыпаться и отправлять состояние ESP и принимать информацию (обновления/таймеры).
Потом аналогично планирую датчики температуры и т.п. собрать, потому хочетсч сразу разобраться.
Попробуйте сначала сделать так.
RST соединяем с Vcc через резистор 10-20к и через кнопку на GND и через диод шоттки катодом к GPIO16.
EN соединяем с Vcc через резистор 10-20к и через кнопку на GND
------------
теперь грузите какой-нибудь скетч который выводит что-то на терминал при сбросе потом переходи в сон секунд на 30
стартуете - в результате у вас будет через 30 секунд периодически выходить сообщение
после того как убедитесь что deep-sleep работает
нажимаете на кнопку EN после сообщения например через 10 секунд. И у вас должно снова выходить сообщение. Т е кнопка EN будет выводить из сна не через 30 секунд а когда нажмете
потом эту кнопку заменяете на сигнал от датчика в виде короткого импульса к GND.
Если датчик дает другой сигнал то надо будет изменить схему. Напишите какой сигнал датчика когда все сделаете с кнопками.
Успехов
 

Zhenya88

Member
потом эту кнопку заменяете на сигнал от датчика в виде короткого импульса к GND.
Если датчик дает другой сигнал то надо будет изменить схему. Напишите какой сигнал датчика когда все сделаете с кнопками.
Успехов
Спасибо. Кнопка по вашей схеме действительно будит ESP, но именно в момент отпускания.
Датчик же при срабатывании даёт постоянное напряжение на порт (есть вода - пропускает ток, нет воды -нет), можете подсказать, как его в импульс превратить?
 

nikolz

Well-known member
Спасибо. Кнопка по вашей схеме действительно будит ESP, но именно в момент отпускания.
Датчик же при срабатывании даёт постоянное напряжение на порт (есть вода - пропускает ток, нет воды -нет), можете подсказать, как его в импульс превратить?
надо поставить диф.цепочку (CR) но чтобы сказать конкретнее надо измерить параметры сигнала длительность фронта выходное сопротивление датчика.
 

nikolz

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

Zhenya88

Member
@nikolz
Прочитал, что можно преобразовать сигнал в импульс через "таймер 555". Может кто-нибудь поделиться мнением?
 

nikolz

Well-known member
@nikolz
Прочитал, что можно преобразовать сигнал в импульс через "таймер 555". Может кто-нибудь поделиться мнением?
нет таймер это плохой вариант.
опишите подробнее ваш датчик или схему нарисуйте.
предложу варианты.
 
Сверху Снизу