Таймер обратного отсчета.

Обсуждаем цифровые устройства...
Аватара пользователя
timer32
Вымогатель припоя
Сообщения: 599
Зарегистрирован: Сб фев 02, 2008 10:51:52
Откуда: Khabarovsk

Re: Таймер обратного отсчета.

Сообщение timer32 »

Уважаемый Soir извините, что снова приходиться к вам обращаться , нужна небольшая корректировочка.
Нужно подправить програмку, вместо кнопки будет стоять оптопара, ее включает бесконтактный датчик.
На протяжении всего цикла "кнопка пуск" должна постоянно замкнута, размыкание происходит по окончании всего цикла.
Вот файл в протеусе как должна вести себя" кнопка пуск" и рисунок :idea:
Вложения
timer9.9sec.rar.rar
(8.42 КБ) 274 скачивания
Безымянный.JPG
(47.41 КБ) 755 скачиваний
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Таймер обратного отсчета.

Сообщение Soir »

timer32 писал(а):...нужна небольшая корректировочка.
Нужно подправить програмку, вместо кнопки будет стоять оптопара, ее включает бесконтактный датчик.
На протяжении всего цикла "кнопка пуск" должна постоянно замкнута, размыкание происходит по окончании всего цикла.

Прошивка, приведенная Вами, работает несколько не так, как Вы описываете. Кнопка Пуск (оптопара) после запуска не влияет на работу таймера. То есть, фраза "должна постоянно замкнута" здесь смысла не имеет.
Как бы то ни было, я повторил эту логику в своей прошивке. После старта, таймер блокируется от внешних воздействий. После завершения работы 4-го таймера все возвращается в исходное положение. Чтобы не менять свою схему и прошивку в части обработки состояния кнопок, я подключил оптопару чуть по-другому, чем у Вас. Если это критично - переделаю. Проверьте логику.
Вложения
Timer_4_1_ch.zip
(15.96 КБ) 288 скачиваний
Аватара пользователя
timer32
Вымогатель припоя
Сообщения: 599
Зарегистрирован: Сб фев 02, 2008 10:51:52
Откуда: Khabarovsk

Re: Таймер обратного отсчета.

Сообщение timer32 »

Ув.Soir. Вы все поняли правильно ,такая логика мне была и нужна. В старой схеме нельзя было удерживать кнопку нажатой на протяжении всего цикла. По этой прошивке все отлично. Старую версию проверял в железе , ни каких вопросов, все прекрасно работало. Еще раз огромное спасибо :music:
Аватара пользователя
nvz
Электрический кот
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Re: Таймер обратного отсчета.

Сообщение nvz »

Доброго дня(утра, вечера,ночи)! Здравствуй Soir! Решил тоже просьбу кинуть - нужен таймер суточный, но с установкой в реальном времени (уверен, многим пригодится). Описание во вложении.
Вложения
Cуточный таймер.doc
(25 КБ) 356 скачиваний
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6307
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Таймер обратного отсчета.

Сообщение Jack_A »

Если ориентироваться на тот МК, который есть в загашнике, то ног может и не хватить :) Обычно поступают наоборот : рисуют схему со всемы необходимыми фичами, и потом под нее выбирают контроллер. Я из этого ТЗ ничего не понял - одной кнопкой задавать и время включения, и время выключения. Но возможно, тот, кто возьмется это делать, окажется "понимательнее" меня.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Таймер обратного отсчета.

Сообщение Soir »

nvz писал(а):Решил тоже просьбу кинуть - нужен таймер суточный, но с установкой в реальном времени (уверен, многим пригодится). Описание во вложении.

Тоже не все понял, скажи чем устройство будет управлять, тогда все будет ясно.
Две страницы назад выкладывал суточный таймер (часы для аквариума), не подходят для решения задачи?
Аватара пользователя
nvz
Электрический кот
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Re: Таймер обратного отсчета.

Сообщение nvz »

Читал я про этот таймер с часами. Есть у меня подобные на 2313. Мне часы не нужны, нужен минутный отсчёт времени с заданной точки. Идея такая: в сутках 24 часа, от этого всё и отталкивается, если выделить рабочий промежуток времени, оставшееся время до 24 часов(начала выделенного промежутка) будет паузой. Если мне (чистый пример) нужен свет в курятнике с 9 часов вечера до 8 часов утра - я наглядно задаю эти 11 часов работы реле, т.е. в 10 часов вечера нажимаю кнопку в первый раз, а в 8 часов утра - второй раз, МК запоминает эти 11 часов как активное время, остальные 13 часов после вычисления (24-11) идёт пауза, потом в 10 часов вечера реле снова срабатывает, в 8 утра отпускает и т.д. пока не отключишься. Поэтому часы и не нужны, время задаёшь чисто визуально и оно повторяется каждые сутки.
Есть слабая аналогия с автоматом работы дворников...
Jack_A писал(а):рисуют схему со всемы необходимыми фичами, и потом под нее выбирают контроллер.

Дык я и так все фичи нарисовал...
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Таймер обратного отсчета.

Сообщение Soir »

nvz писал(а):Читал я про этот таймер с часами. Есть у меня подобные на 2313. Мне часы не нужны, нужен минутный отсчёт времени с заданной точки. Идея такая...

В принципе идея понятна... Сделаю.


P.S.
Мне кажется, что мой таймер с часами лучше подходит для этих целей. Выставил время включения в 10 вечера а выключения в 8 утра и можно в курятник хоть год не заглядывать, никакие кнопки не нажимать и т.п.
Аватара пользователя
nvz
Электрический кот
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Re: Таймер обратного отсчета.

Сообщение nvz »

Как я писал - есть у меня такие часы с таймером, правда без защиты от потери питания. Неудобно.. Условия могут быть разными, не обязательно восход-заход солнца или ещё чего. Для того, чтобы задать время таймера на часах - один цикл уйдёт на засекание времени, только после этого ставишь уставки. А в этом случае только нажимаешь кнопку когда надо и цикл получается уже рабочим. А потом можно хоть целый год в курятник не заглядывать...
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Таймер обратного отсчета.

Сообщение Soir »

nvz писал(а):...А в этом случае только нажимаешь кнопку когда надо и цикл получается уже рабочим...

Схема прорисовывается такая (см. вложение). Ужался в выводах, чтобы можно было использовать кварц. Без него придется в курятник почаще заглядывать.
Вопросы:
1. Какой МК? В принципе получается и на 16F84, схема будет одна и та же, прошивки разные.
2. Выбора индикатора не будет, может потом как-нибудь, по аналогии с кнопкой START. Но лучше скажи под какой конкретно.
3. Как менять цикл? Все одной кнопкой? 1-ый раз нажал пошел прямой отсчет, 2-ой - обратный, 3-ий - все обнуляется и по-новой? И т.д.?
4. Что выводится на индикатор?
Вложения
Timer_Day.zip
(11.86 КБ) 304 скачивания
Аватара пользователя
nvz
Электрический кот
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Re: Таймер обратного отсчета.

Сообщение nvz »

Похоже файл вместо схемы? в протеусе не работает. Не понятно включение D4, зачем на 3 выводе резистор на плюс?
1. можно 628.
2. Такой как на схеме , ОА.
3. Можно сделать так: в памяти ноли, при первом нажатии (при мигающей точке) прямой отсчёт активного состояния. При втором нажатии, после вычисления - обратный отсчёт пассивного состояния, потом обратный отсчёт активного состояния, потом обратный отсчёт пассивного и т.д. После второго нажатия кнопка отключается, проще сделать перезапуск, т.е. тумблером отключается сетевое питание и батарейки.
4. На индикаторе 2 знакоместа часов(незначащий ноль гасится), точка и 2 знакоместа минут. Округления секунд (если надо) - по твоему усмотрению.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Таймер обратного отсчета.

Сообщение Soir »

nvz писал(а):Похоже файл вместо схемы? в протеусе не работает. Не понятно включение D4, зачем на 3 выводе резистор на плюс?

Как это - файл вместо схемы? Пока в компьютере все схемы это файлы. Наверно имелось ввиду схема, нарисованная в Proteus? Работать пока и не будет, прошивку я еще не делал. Это лишь схема.
D4 вместе с R1 будут определять наличие питания от сети. D4 можно и не ставить, если жалко 5 копеек. Но тогда при наличии сетевого питания "некрасиво" на выводе 6 (RB0). При включеном сегменте A вывод 6 будет дополнительно нагружен резистором R1, диод это отсекает. При использовании 16F628A можно определение питания перенести на вывод 4 (RA5) тогда схема немного упростится в понимании.
На выводе 3 подтяжка к +5 необходима в связи с особенностью данного вывода.
nvz писал(а):После второго нажатия кнопка отключается, проще сделать перезапуск, т.е. тумблером отключается сетевое питание и батарейки.

Тогда может проще организовать сброс на выводе 4 (RA5)?
Аватара пользователя
nvz
Электрический кот
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Re: Таймер обратного отсчета.

Сообщение nvz »

Soir писал(а):При включеном сегменте A вывод 6 будет дополнительно нагружен резистором R1, диод это отсекает.

Да просто непонятно, как вывод 6 будет определять наличие напряжения?
Soir писал(а):Тогда может проще организовать сброс на выводе 4 (RA5)?

Лучше, по-моему, здесь организовать контроль напряжения.
Soir писал(а):На выводе 3 подтяжка к +5 необходима в связи с особенностью данного вывода.

А внутренней подтяжки там нет? Вроде на всех схемах термостатов без внешнего резистора....
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Таймер обратного отсчета.

Сообщение Soir »

nvz писал(а):Да просто непонятно, как вывод 6 будет определять наличие напряжения?

Там все просто. Точно так же, как нажатие кнопки START. Если во время опроса напряжение ниже порога, значит кнопка нажата (или напряжение 0). Собственно, я это уже реализовал, можешь проверить.
nvz писал(а):
Soir писал(а):Тогда может проще организовать сброс на выводе 4 (RA5)?

Лучше, по-моему, здесь организовать контроль напряжения.

Тогда уже на 84-ый возврата не будет. Пока оставил как было.
nvz писал(а):А внутренней подтяжки там нет? Вроде на всех схемах термостатов без внешнего резистора....

Нет, выход с открытым стоком.
----------
Во вложении 1-ая версия прошивки для 16F628A. Схема (немного обновленная), тестовый проект (основной проект тоже симулируется, но не все. Я не стал с ним заморачиваться, если для симуляции задействовать все элементы - начинает тормозить. Поэтому создал light версию проекта для симуляции.) и прошивка.

Краткое описание.
При включении питания режим ожидания, на индикаторе 0.00. Нажатие на START запускает таймер прямого отсчета, нагрузка включается, разделительная точка мигает. Повторное нажатие на START выключает нагрузку. Время выключенного состояния определяется как разница 24.00 - время прямого отсчета. Секунды тоже учитываются (60 - текущий счет). На индикатор выводится оставшееся время до включения нагрузки. Когда дойдет до 0, нагрузка включается запускается прямой отсчет до запомненного первоначального.
Немного ненаглядно, доработаю. Варианта вижу два. Первый, как ты предлагал, тоже обратный отсчет. Тут немного будет путаницы при первом нажатии на START. Второй - можно использовать кнопку START (она после 2-го нажатия блокируется) и по ее нажатию просматривать время выключения (пока писал описание уже и реализовал). Выбирай.

P.S.
Не проверял. Мог что-то напутать (+- минута, или секунды) при смене цикла. Проверять некогда.
И нужно еще точность хода проверить. На реальном МК и кварце. Затем я сделаю коррекцию при необходимости.
Вложения
Timer_Day_CA.zip
(21.08 КБ) 308 скачиваний
Аватара пользователя
nvz
Электрический кот
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Re: Таймер обратного отсчета.

Сообщение nvz »

На днях скидаю, проверю, отпишу. Спасибо!

Ага, скидаю... Проверил в сусеках - ребята подчистили. Если можно - новую прошивку на 84 и ОК.
Аватара пользователя
nvz
Электрический кот
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Re: Таймер обратного отсчета.

Сообщение nvz »

См. выше
разберу уже ненужный термостат.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Таймер обратного отсчета.

Сообщение Soir »

nvz писал(а):См. выше
разберу уже ненужный термостат.

Так и не понял, надо менять прошивку или не надо... На всякий случай для PIC16F84, индикатор с общим катодом.
Вложения
Timer_Day_CC_84.zip
(9.46 КБ) 283 скачивания
Аватара пользователя
nvz
Электрический кот
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Re: Таймер обратного отсчета.

Сообщение nvz »

Уже собираю в железе на 84 и ОК, проверка (сам понимаешь) будет долгой
Soir писал(а):На индикатор выводится оставшееся время до включения нагрузки. Когда дойдет до 0, нагрузка включается запускается прямой отсчет до запомненного первоначального.

Хотелось бы конечно: Когда дойдет до 0, нагрузка включается запускается обратный отсчет от запомненного первоначального.
Аватара пользователя
nvz
Электрический кот
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Re: Таймер обратного отсчета.

Сообщение nvz »

Первая проба: при первом нажатии считает, при втором - вычитает, считает. Реле включается-выключается.
Дёготь: При отключении сети реле отключается, индикатор горит, счёт идёт. При включении сети происходит сброс МК (нули при постоянной точке) или индикатор вообще гаснет. У меня блок питания на конденсаторе, может из-за этого?
Да, индикатор загорается даже когда с нуля включаешь аварийное питание.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Re: Таймер обратного отсчета.

Сообщение Soir »

nvz писал(а):Первая проба: при первом нажатии считает, при втором - вычитает, считает. Реле включается-выключается.

Я уже переделал. Будет первое нажатие прямой отсчет реле включено. Второе - обратный отсчет времени выключенного состояния, реле выключено. Дальше на кнопку не реагирует. Когда обратный отсчет дойдет до 0 реле включится и начнется обратный отсчет времени включенного состояния. И далее аналогично. Новая прошивка сейчас у меня на прогонке (в симуляторе, по ускоренной программе), если замечаний по ней не будет, через час-два выложу.
nvz писал(а):Дёготь: При отключении сети реле отключается, индикатор горит, счёт идёт... Да, индикатор загорается даже когда с нуля включаешь аварийное питание.

Счет идти будет (а что, должен останавливаться?), индикатор должен гаснуть. Проверь, правильно ли подключена цепочка определения наличия питания. Попробуй без диода, или/и уменьши сопротивление резистора.
nvz писал(а):При включении сети происходит сброс МК (нули при постоянной точке) или индикатор вообще гаснет. У меня блок питания на конденсаторе, может из-за этого?

Может из-за этого. Добавь конденсаторов на МК по питанию. Попробуй от другого блока питания.

P.S.
Все забываю спросить. А зачем в этом устройстве индикатор? Можно ограничиться 1-2 светодиодами для отображения текущего состояния. Тогда и МК можно поменьше/подешевле, и схема значительно упростится...
Ответить

Вернуться в «Цифровая техника»