Схема таймера обратного отсчета 6 месяцев

8

Мне нужно спроектировать схему синхронизации. Через 6 месяцев должен загореться светодиод. Затем светодиод можно выключить нажатием кнопки, и отсчет 6 месяцев должен начаться снова. У кого-нибудь есть идеи, с чего мне начать? Может ли таймер 555 что-то делать в течение этого времени или мне нужно что-то еще? Любая помощь будет принята с благодарностью ..

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


источник
7
Это должно быть портативным, или это будет связано с источником переменного тока? Если это так, вы можете рассчитывать пересечения 60 (или 50) Гц, которые очень точны в долгосрочной перспективе.
tcrosley
1
Не пытайтесь использовать источник переменного тока - вы не можете рассчитывать на то, что питание будет включено в течение 6 месяцев без принятия чрезвычайных мер.
Майкл Коне
1
Я видел это приложение, используемое в фильтрах для воды, чтобы предупредить вас, когда фильтр должен быть заменен. Они могут работать в течение многих лет без необходимости замены батареи, поэтому я предполагаю, что они могут сделать это очень легко.
Kellenjb
3
@ Винсент Конлон: Какая точность вам нужна? В примере с водяным фильтром я уверен, что точность ужасна, но я не думаю, что кому-то все равно, если вы будете предупреждены на неделю раньше или позже.
Kellenjb

Ответы:

8

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

Я бы порекомендовал использовать самый простой из 8-битных микроконтроллеров. Вы должны тщательно обработать числа, но PIC16F84A (или Arduino, или множество других подобных устройств) может это сделать. Я мог бы установить 1-секундный таймер, а затем посчитать 15778463 истечения таймера, сохранив счет в 32-битной переменной. (32-разрядные переменные Arduino см. По адресу http://www.arduino.cc/en/Reference/Double ).

pingswept
источник
2
Хм ... double? Неправильно. Вы имеете в виду longили желательно int32_t.
Ник Т
8
Ах, ты прав. Грубо, но верно.
pingswept
12
Хм ... int32_t? Неправильно. Вы имеете в виду uint32_t, если только вы не ожидаете, что время тоже пойдет вспять.
Тоби Джаффи
1
@Nick, хотя технически верно, большинство реализаций C на 8-битных микроконтроллерах не следуют заданному типу продвижения. Они часто просто используют самый большой тип в выражении.
Марк
1
Имейте в виду, что без RTC или внешнего генератора точность здесь будет довольно ужасной, особенно в течение такого длительного периода времени. И не забывайте периодически записывать текущий счет в EEPROM!
Ник Джонсон
8

Как pingswept, я бы порекомендовал дешевый микроконтроллер. TI Launchpad MSP430 поставляется с кристаллом 32,768 кГц и поддерживает работу с очень низким энергопотреблением.

Этот проект не далеко от того, что вы хотите: http://kennethfinnegan.blogspot.com/2010/08/msp430-bicolor-led-clock.html

Тоби джеффи
источник
6

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

повестка дня

В любом случае, давайте делать это в электронном виде, просто для удовольствия. Кажется, вам не нужна очень высокая точность; не имеет значения, будет ли фильтр заменен на день раньше или позже (день в 6 месяцев с точностью до 0,5%). Я отмечаю, что он должен работать от батареи, поэтому он должен быть действительно маломощным.

Я собираюсь начать с изменения требований . Вы хотите использовать светодиод в качестве индикатора, но ваше устройство должно быть достаточно заметно в гостиной, если вы хотите быть уверенным, что светодиод горит, даже если он мигает. (Отметим, что мигание может быть необходимо, чтобы избежать разрядки батареи до того, как светодиод будет замечен; в конце концов, светодиод может загореться сразу после того, как вы ложитесь спать.)
Я бы использовал зуммер вместо светодиода . И для того, чтобы гудок звучал посреди ночи, нам нужно точное время, которое также сообщит нам время суток. Это означает, что 555 вышел, и мы должны полагаться на микроконтроллер, Небольшой микроконтроллер стоит меньше 50 центов, а работа на кристалле 32,768 кГц не потребляет много (для одного проекта я использовал MSP430F1101, который потреблял менее 4μА) и имеет точность минут за месяцы.
Но это означает, что вы должны быть осторожны с моментом запуска таймера, а это не очень удобно для пользователя.
Введите приемник атомных часов . DCF77 в Европе и WWVB в Северной Америке транслируют время в виде 1-секундных импульсов. Микроконтроллер может работать на внутренних часах RC (не обязательно должен быть точным) и сохранять время на основе полученного временного кода. Для экономии энергии вы можете заставить приемник атомных часов активировать микроконтроллер каждые 1 секунду, чтобы контроллер мог обновлять время и дату и возвращаться в спящий режим. Например, вы можете запрограммировать микроконтроллер на подачу сигнала в 14:00 в первую субботу, следующую за тайм-аутом.

Тогда есть блок питания . Решение микроконтроллера нужно всего несколькоμA, поэтому литиевая батарея CR3032 (рассчитанная на 500 мАч) может работать несколько лет. Но время между событиями настолько велико, что в конечном итоге батарея разряжается на полпути через 6 месяцев, и время замены фильтра пройдет незамеченным.
Я бы предложил устройство с питанием от сети с использованием небольшого трансформатора; У меня есть куча трансформаторов 6 В, 0,35 ВА для такого рода небольших продуктов. Поскольку длительный период, например 6 месяцев, не гарантирует отсутствие перебоев в питании, вам потребуется резервная батарея / конденсатор . Здесь, в Бельгии, у нас было менее 1 отключения электроэнергии в среднем за 2 года, самое продолжительное, что я испытал, длилось 2 часа. Я бы не использовал батарею, по крайней мере, не первичный элемент. Подойдет перезаряжаемая, но вместо этого давайте использовать суперкап . А 0.μУстройство работает более 24 часов. Микроконтроллер может контролировать питание от сети, так что, если 6-месячный таймаут произойдет во время отключения питания, микроконтроллер может отложить сигнал до восстановления питания.

Для приложения, которое требует так мало взаимодействия с пользователем, все еще полезно иметь некоторую обратную связь . Вы можете мигать светодиодом каждую секунду, чтобы указать, что таймер работает, и если вы хотите сделать его роскошной версией, вы можете отобразить счетчик оставшихся дней на трехзначном ЖК или светодиодном дисплее.


править (см. комментарий Бена)
В прошлом я использовал эти маленькие приемные модули DCF77 от Conrad .

модуль dcf77

Я живу в Европе, следовательно, DCF77, для WWVB (Северная Америка) существуют подобные модули .
Соединения - это просто источник питания (от 1,2 В до 15 В) и 2 выхода DCF77, один не инвертированный, один инвертированный. Выходы с открытым коллектором, поэтому с правильным подтягиванием, подходящим для любого напряжения, на котором работает микроконтроллер.


Дальнейшее чтение:

stevenvh
источник
Хороший подход, но есть огромное вопиющее упущение, когда речь идет об оборудовании, которое вы будете использовать для получения трансляций с метками времени.
Бен Фойгт
@ Бен - достаточно справедливо. Добавил в мой ответ.
Стивенв
Ваша ссылка для "похожих модулей" не работает. Не могли бы вы предоставить номер модели и / или обновить свою ссылку?
bcsteeve
6

Arduino (или другой микроконтроллер) со сверхточной ИС часов реального времени DS3231 . Когда кнопка нажата, время и дата сохраняются в памяти - MCU может циклически проверять дату и время и выключаться, когда готово; или при нажатии кнопки он перезапускается и т. д.

stevenvh
источник
1
+1 RTC точно. DS3234, если вы предпочитаете использовать SPI вместо I2C.
Крейг
Это отличный чип. Пусть он отслеживает все утомительные подсчеты и сроки для вас. Гораздо проще, чем считать импульсы и делать все преобразования в реальном времени.
Captncraig
2 ppm, конечно, приятно, но излишне. Подойдет стандартный кристалл на 20 частей на миллион: я не думаю, что важна точная минута для замены фильтра для воды (если только не среди ночи).
Stevenvh
4

Сложной частью будет точность в течение такого большого промежутка времени.

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

mouviciel
источник
4

Я думаю, что вы должны использовать таймер 555, чтобы рассчитать время для 16-минутных интервалов, а затем подать это в какой-то счетчик, чтобы разделить его. 14-битный счетчик будет составлять около 6,06 месяцев.

Томас О
источник
3
Вы не должны использовать 555 с периодом 16 минут; лучше каскадировать два счетчика и запустить 555 на более нормальной частоте (кГц или около того). Лучше вообще не использовать 555, если вы сильно заботитесь о терпимости.
Ник Т
CMOS 555 будет легко работать часами. ОП, казалось, предполагал, что точность не была проблемой.
Томас О
Даже если точность не была проблемой, 555, работающий в течение такого длительного промежутка времени, будет настолько дико неточным, что сделает его практически произвольным. Мне нравится решение MSP430 намного лучше, дешевле, и поставляемый кристалл будет достаточно точным в течение требуемого промежутка времени.
ТТТ