Таймер — одна из наиболее популярных радиолюбительских конструкций Вниманию читателей предлагается еще один вариант В отличие от других подобных устройств на микроконтроллерах, здесь выдержку устанавливают не нажатиями на кнопки, а обычным переменным резистором.
Простота управления, цифровая индикация, возможность быстрой установки нового значения выдержки делают этот таймер удобным для применения в качестве кухонного Продолжительность выдержки может быть любой пределах 1…85 мин.

  Схема таймера показана на рисунке. Микроконтроллер DD1 работает по программе, коды которой приведены в таблице. После включения питания и инициализации регистров микроконтроллера программа конфигурирует вывод RA2 как выходной и устанавливает на нем высокий логический уровень. После первоначальной зарядки конденсаторов С2 и СЗ программа переходит в фазу установки продолжительности выдержки. Циклически выполняется подпрограмма "OneShot", заимствованная из статьи А. Долгого "Аналоговое управление в микроконтроллерном устройстве" ("Радио". 2005, № 4, с. 33), а также проверяется состояние кнопки SB1. Светодиод HL1 погашен.


  Полученное в результате работы подпрограммы число в зависимости от положения движка переменного резистора R1 может находиться в пределах 1 .254 Программа преобразует его в продолжительность выдержки в минутах, причем каждым трем последовательным значениям этого числа соответствуют одинаковые выдержки. Таким образом, максимальная выдержка — 255/3 = 85 мин. Установленное значение программа выводит на двухразрядный цифровой индикатор HG1.HG2.


  Обнаружив нажатие на кнопку SB1, программа переходит в фазу отсчета выдержки, сигнализируя об этом включением светодиода HL1. Фактически идет подсчет прерываний от таймера TMR0. Так как он настроен (вместе с предварительным делителем) на коэффициент пересчета 4000, а период повторения счетных импульсов при частоте кварцевого генератора 4 МГц равен 1 мкс, прерывания происходят каждые 4 мс. Как только их число достигнет 15000 (это значит, что прошло 0,004x15000 = 60 с), программа уменьшает выведенное на индикатор значение на единицу и начинает подсчет прерываний заново.


  Когда заданное число минут пройдет, с выхода RA4 микроконтроллера через усилитель на транзисторе VT1 на динамическую головку ВА1 поступит прерывистый сигнал частотой 1000 Гц. Через 6 с сигнал прекратится и программа таймера вернется в фазу установки выдержки.


  Если кнопка SB1 нажата до истечения установленной выдержки, таймер прекращает ее дальнейший отсчет и, не подавая звуковой сигнал, переходит в фазу установки. При переходах из одной фазы в другую программой предусмотрены секундные паузы, до истечения которых кнопку SB1 необходимо отпустить.
Налаживание таймера сводится к подборке конденсатора СЗ. Его емкость должна быть такой, чтобы при максимальном сопротивлении переменного резистора R1 на индикатор было выведено число 85. Подбирая резистор R16, устанавливают необходимую громкость звукового сигнала.


  Питать таймер можно от любого источника постоянного напряжения 3.. .5 В, желательно стабилизированного. Потребляемый ток не превышает 100 мА. Переменный резистор должен быть с линейной характеристикой регулирования. Светодиодные индикаторы АЛС324Б можно заменить другими с общим анодом, а микроконтроллер PIC16F84A — более ранней моделью PIC16F84.

Видео от пользователя goda:

Коментарии от goda:

  Таймер собрал, работает, поскольку таймер нужен был для лампы засветки, использовал переменный резистор  10кОм получился диапазон  0-10мин на полностью выкрученой в право ручке резистора. Погрешность на максимальном  значении 85мин получается 1-2 сек. Выход звука не понадобился ,поэтому на плате его нет,сигнал с ножки 0,4 вольта идет проверил прибором.

  Реле использовал на 12 вольт другого не оказалось.Можно использовать на 5вольт без особой переделки платы.Подстроечный конденсатор не понадобились на мой диапазон 0-10мин. При первом включение(подача питания) щелкает реле, потом  работает нормально.

  Важно!!! На моей плате применена тактовая кнопка для включения, у кнопки проходящие контакты, через нее идет минус питания на м.к. Если кто-то будет использовать выносную кнопку, нужно установить перемычку. При запуске отсчета времени переменник не реагирует на поворот ручки, пока кнопкой не остановиш отсчет времени. Индикатор использовал большой 2,0см х2,5см называется  КЕМ-5621-BSR с общим анодом поэтому понадобились два транзистора BC547 для цепи анода.

Корпус  переменного резистора подпаиваем на минус, иначе (прыгают показания при прикосновении).

Фото от Nikolai4
Таймер
Таймер

Скачать исходник и прошивку

Скачать печатку от goda

Скачать [49,28 Kb] (cкачиваний: 406) две печатки от Nikolai4, под два типа реле, питание от зарядки мобилы все влазит в корпус с вилкой.

Источник- Радио №7 2006г



   
billybons # 1
 
 
Собирал эту схему, не помню это из какогото журнала " Радио", кажись за 2005 год,работает хорошо, можно кстати убрать резистор R15 вообще.


   
Sp@mmerset64bit # 2
 
 
В CS его надо,вместо бомбы. biggrin


   
Genych # 3
 
 
smile устройство может конечно и полезное, но такой музейный контроллер (который, кстати, стОит как две тиньки 2313) ради которого пришлось делать причудливую имитацию АЦП - это как-то не рационально. Ну разве только для спортивного интереса. А вообще концепция аналогового управления цифровыми устройствами мне очень даже нравиться - ненавижу кнопочные регуляторы громкости.


   
Nikolai4 # 4
 
 
лично мне этот таймер понравился только из-за управления - подстроечником, скоро соберу сам и выложу свою печатку размерами 40*40мм
а вообще таймер этот идеально подходит для засветки фоторезиста, я для этих целей его и собираю


   
Sp@mmerset64bit # 5
 
 
А на современном аналоге не проще собрать? PIC16F629A кажись,почему бы не переделать?


   
Rhime # 6
 
 
Почему бы просто не похвалить человека??? МОЛОДЕЦ!!!


   
barbus8089 # 7
 
 
А возмжно переделать данный таймер на три диапазона?
1. милисекунды
2.секунды
3. и минуты


   
Tsoorckanu # 8
 
 
Автор МОЛОДЕЦ!!!
Простое и удобное управление.

Солидарен с предпочтением barbus8089.


   
dima1978 # 9
 
 
Собрал сие чудо жене на кухню, работает отлично , но при включении на индикаторе то 1, то3, то 7 то блымает, бывало и 14 показывало, кто подскажет чего такие скачки.


   
goda # 10
 
 
dima1978,Корпус переменного резистора на корпус посадил?


   
dima1978 # 11
 
 
goda,
посадил но чую перегрел при этом может изза перегрева


   
tika # 12
 
 
Нужна помощь . собрал таймер в прошивку записал свою константу- сохранил - записал на pic но не светит не работает запись без "EEPROM". А просто прошивка без изменением константы " 3FF1" . Включаешь цифры бегают плюс минус 1-2 и свет. просто мигает в интервале секунд. Что не так? no Моя константа 3FFF.


   
tika # 13
 
 
И может ли купленная 16F84A с константой 3FFF значит нет константы ? И прошивается ли в этом случае она. wassat


   
Nikolai4 # 14
 
 
у нее нет константы это раз, эту функцию в этой схеме выполняет кварц на 4МГц


   
tika # 15
 
 
Да тормознул . Но мог я купить с 3FFF ?


   
Nikolai4 # 16
 
 
купить не мог, а считать программатором мог
но это уже другая история

проверь цепочку кварца и конденсаторов в обвязке, попробуй еще раз перепрошить


   
tika # 17
 
 
Все запустил . Но при вращение сопротивления цифры мерцают. Корпус на минусе сидит. belay


   
Nikolai4 # 18
 
 
параллельно сопротивлению конденсаторы стоят?


   
tika # 19
 
 
Плато от "goda" как на рисунке.
Может на PIC по питанию конденсаторы повесить.


   
goda # 20
 
 
я использовал сдвоенный "стерео "переменник, точнее показания стали и не прыгают цифры .


   
sergeil # 21
 
 
добрый день таймер хороший сам собирал пользуюсь для засвечивания фоторезиста
Вопрос кто нибудь тестировал на pic16f628. а то …84 закончились а вот …628 навалом хочу повторить конструкцию для духового шкафа


   
Nikolai4 # 22
 
 
sergeil, на 628 не работает, надо исправлять....пока не кому


   
Skat_man # 23
 
 
Я тоже жене на кухню такой собрал. Залил в 628А не работает. Благо где то в загашнике балтался динозавр PIC16f84А, только тогда заработал.


   
troynec # 24
 
 
Здравствуйте
я тоже собрал этот таймер
переделал печатку чтобы в коробку с под розетки влазил
хочу чтоб вытяжку в туалете выключал.
правда блок питания не собирал

Кто поможет переделать программу чтоб реле запитывалось при включении таймера а не наоборот а то большее часть времени реле будет запитано (когда таймер в режиме ожидания).

Заранее спасибо за помощь.


   
Nikolai4 # 25
 
 
Было собрано два устройства, индикатор мерцает при плохом источнике питания, особенно если это импульсный блок питания от мобилы, в таком случае надо обязательно ставить электролиты по питанию, заместо С2 С3 ставим 100нан и не мучаемся, от этой емкости зависит время максимальное, печатка в статье.
R1 - для плавности хода 10К


   
vovella # 26
 
 
чё за D1 над реле в схема от юзера goda? mzf, почему нельзя составить список деталей? схема одна, печатка другая, фотография третья - мрак. кто собирал, у кого есть печатка под оригинальную схему?



   
Nikolai4 # 27
 
 
что здесь непонятного, D1 стоит параллельно катушке реле и защищает схему от ЭДС самоиндукции, катодом к плюсу стоит диод! Диод любой, к примеру 1N4148. Печатку делай сам раз не нравится.


   
vovella # 28
 
 
спасибо за оперативность. только на тебя и надеялся.
и всё же, почему нельзя список деталей составить? ладно ещё на схеме можно записать, но красные цифры на чёрном фоне, а сверху зелень - ну жесть, жестью…


   
Nikolai4 # 29
 
 
любую печатку перед тем как делать надо проверить по схеме, тем более если она не твоя, только потом составляешь список деталей или по схеме список, там три важных детали все остальное есть у любого электрика :)


   
Genezis # 30
 
 
Делюсь ИСПРАВЛЕННОЙ прошивкой - TIMER_UV.hex (google disk):
https://docs.google.com/file/d/0BzSCrlZENJUsZTdtQ3RWcjNxUEk/edit?usp=sharing
Теперь реле не будет щелкать при включении питания таймера (после высвечивания "88"). Благо исходники есть. А проблема там была всего в одной строчке кода %)
Таймер и правда отлично подходит для установки УФ-засветки.

Ещё проект в симуляторе Proteus ISIS - если кому-то хочется погонять схему до сборки и отладить прошивку.
Проект для версии ISIS 7.8 SP2: "Timer_UV.DSN"
https://docs.google.com/file/d/0BzSCrlZENJUsemI5TTVBTnlWMEk/edit?usp=sharing


Обновления

Сообщения ФорумаОтветов
3D Модели для Авто0
Бакометр 2335
Touch Start-Stop Engine.587
Кодграберр17
Исправляем AVR фьюзы при помощ …109
Бакометр - измеритель остатка…4
IR конструктор на PIC12F62977
Универсальное зарядное устройство103
бaкoмeтр1974
Двунаправленный автомобильный…2
Программатор GENIUS G8401
Светодиодный тахометр34
Индикаторы ГРИ ИН1 - ИН141
Multiprog1
Управляющая программа LED CUB959
Универсальное зарядное устройство9
Изготовлю печатные платы29
Простой автоматический выключа…25