Может ли кто-нибудь помочь мне с моим проектом?

Я пытаюсь использовать Node MCU и NTP time, включая реле 2 раза в день и всего на 10 минут, например, в 6 утра 10 минут и в 6 вечера 10 минут.

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

И есть еще один случай, когда узел mcu выключается после завершения задачи и снова включается только для того, чтобы снова выполнить задачу, которую я не хочу.

Я хочу решение, в котором мой узел MCU будет только выполнить задачу в определенный период независимо от того, сколько раз он будет перезапущен, а также рассчитывать время оказывается на реле таким образом, что если электричество вниз и когда он снова включается и не 10 минут он выполнил задачу и включение реле только необходимую сумму.

Я знаю, что это немного сложно, поэтому я хочу, чтобы кто-то помог мне в этом отношении. Я думал о том, чтобы использовать SQL-сервер, но точно не знаю, как удовлетворить свои требования.

, 👍1

Обсуждение

Прав ли я, говоря, что есть две отдельные проблемы? #1 Убедитесь, что реле активируется только два раза в день, по 10 минут каждый, и #2 отследите эти инциденты? #1 требуется дополнительная информация-если он включен на 5 минут, и питание теряется при восстановлении питания, должен ли он включаться еще на 5 минут? Имеет ли значение время, за которое восстанавливается энергия? Например, если питание отключено на 15 минут, что должно произойти? Для № 2, что конкретно нужно отслеживать? Время включено/выключено (время по часам)? Количество циклов включения питания? И так далее. Нужно многое обдумать, прежде чем сузить круг поисков., @Dave Newton

Нет время, в которое мощность восстановлена, не имеет значения, если предыдущий цикл продолжительностью 10 минут был неполным, он должен завершить его, несмотря ни на что, @rohithrathod banoth

Необходимо отслеживать время, в течение которого включена ретрансляция, @rohithrathod banoth

Основное здесь, по-видимому, заключается в том, что вам нужно постоянно сохранять время начала событий. Это можно сделать во флэш-памяти. Я не уверен, какой библиотекой здесь пользоваться. Можно использовать библиотеку "EEPROM" (она использует флэш-память на ESPs вместо EEPROM), @chrisl

вам нужно отслеживать максимально допустимый промежуток времени ... если *время включения* должно быть точным в течение 30 секунд, то следите за 30-секундными интервалами .... это сохранит точность при одном отключении питания, @jsotola

Да, прошивка была правильным решением . Спасибо!, @rohithrathod banoth

зачем отслеживать использование? Почему бы просто не спросить раз в секунду: "Это между 6 и 6:10?" Если да, включите контакт, если нет, выключите ее. тогда не должно иметь значения, перезагрузится ли он непосредственно до, во время, после и т. Д..., @dandavis