Кухонный таймер на микроконтроллере на батарейке. Кухонный таймер - подарок своими руками

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

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

Основой устройства является счетверенный операционный усилитель LM324, причем три его элемента являются отдельными таймерами, а четвертый элемент - генератором звука. Нажав на один из переключателей, соответствующий желаемой выдержке времени, допустим, SA1 - 5 мин, питание начинает поступать на схему, а конденсатор С1, включенный параллельно контактам переключателя, перестает быть замкнутым и начинает медленно заряжаться через резистор R1. Таким образом, в момент включения потенциал на инвертирующем входе ОУ ниже, чем на неинвертирующем, следовательно, выход ОУ имеет потенциал питающего напряжения. Инвертирующий вход звукового генератора на элементе DA1.4 через диод VD1 оказывается под высоким потенциалом, что блокирует его работу-динамик молчит.

По прошествии времени, необходимого для зарядки конденсатора С1 через резистор R1, потенциал на инвертирующем входе ОУ превысит значение потенциала на неинвертирующем. При этом на выходе ОУ сформируется низкий потенциал - диод VD1 будет закрыт и заработает звуковой генератор. С вывода 14 элемента DA1.4 сигнал, сформированный генератором, через резистор R4 и диод VD1 поступает на базу транзистор VT1, к которому подключен звукоизлучатель, раздается звуковой сигнал. Для выключения устройства необходимо повторно нажать на переключатель SA1, что отключает схему от питания и одновременно разряжает конденсатор С1 - таймер снова готов к работе.

Время отсчета таймера определяется номиналами элементов С1-СЗ и R1-R3. При указанных значениях этих деталей, мы будем иметь следующие интервалы выдержки времени: SA1 - 5 мин, SA2 - 10 мин, SA3 - 20 мин. При желании можно
изменить время выдержки каждого из таймеров, увеличивая или уменьшая номиналы соответствующих резисторов и конденсаторов.

Налаживание устройства сводится к подбору конденсатора С4, определяющего тональность, и резистора R5 - громкость звучания.

Печатная плата не разрабатывалась, так как был использован навесной монтаж. Резисторы МЛТ -0,125. Времязадающие конденсаторы С1 -СЗ с возможно меньшим током утечки, остальные К73-17. Диоды VD1-VD4 - КД521А, замена транзистора VT1 - КТ817А, Б. Светодиод красного цвета свечения HL1, можно использовать мигающий
UL-506S11FD-FB, что позволит получить эффект отсчета времени. Переключатели SA1-SA3 - любые малогабаритные. В качестве звукоизлучателя подойдет небольшой динамик с сопротивлением обмотки 8 Ом, можно использовать небольшой звукоизлучатель от китайских мягких игрушек, имеющий размеры 12x10 мм. Следует лишь добиться достаточно высокой громкости звука, иначе таймер можно не услышать на фоне работающей бытовой техники. Питание осуществляется от батареи 6 В. Изменение питающего напряжения в пределах4,5... 12 В почти не оказывает влияния на время выдержки таймера, при этом лишь уменьшается громкость звука.

Д.Ю. Кибардин, г. Хмельницкий РА2"2010


C этой схемой также часто просматривают:

Иногда требуется просто задать временной интервал, без особой микроскопической точности. Например, для приготовления пищи, где погрешность в несколько секунд за полчаса, час не играет важной роли. Исходя из этих соображений в качестве тактового генератора выбран внутренний RC-генератор. Стабильность которого зависит от температуры и изменения напряжения питания, поскольку микроконтроллер сохраняет свою работоспособность при напряжении 1,8-5,5 В. В качестве источника питания применил 3-х вольтовую батарейку (или 2 элемента по 1,5 В).

Ставилась задача максимально упростить конструкцию при минимуме внешних деталей и элементов управления и индикации (как можно проще). Программа написана на ассемблере в AVR Studio.

Для управления режимами таймера имеется пара кнопок. Первая "SET" для установки временного интервала, вторая "RESET" для сброса в любой момент если потребуется «переиграть» ситуацию и выставить другой временной интервал. А так же звуковой зуммер, в качестве звуковой индикации о состоянии таймера в разный период работы.

Таймер сделан с минимальным 5 минутным дискретным интервалом, таких интервалов можно набрать сколько угодно (до 255) если удерживать кнопку в нажатом состоянии.

Принципиальная схема кухонного таймера:

После отпускания кнопки начинается запуск таймера и обратный отсчёт, особенность таймера - звуковая индикация (глаза и руки не участвуют в контроле, а только слух), при установке «пикает» столько раз сколько нужно раз набрать 5-ти минутных интервалов. Например: нужен интервал 30 минут, значит надо нажать кнопку "SET" и удерживая её в нажатом состоянии, набрать «пиликаний» на 6 раз и отпустить кнопку. С момента отпускания кнопки "SET", зажигается светодиодный индикатор, свидетельствующий о том, что таймер запущен, и гаснет только по окончании всего цикла, также с момента запуска начинается обратный отсчёт, зуммер «пикает» по прошествии очередного дискретного 5-тиминутного интервала столько раз сколько их ещё осталось до завершения полного цикла таймера. А когда весь цикл пройден, в конце цикла звучит длительный «пиликающий» сигнал на протяжении около 10 секунд оповещающий о финале.

После этого, таймер переходит в режим ожидания перейдя по команде sleep в энергосберегающий режим Power down где потребляемый ток составит меньше микроампера в программе задействован, внутренний RC-генератор тактовая частота которого выбрана 128 / 8 кГц.

Опытные хозяйки всё отмеряют на глаз и чувствуют время «внутренними» часами, но люди склонны впадать в задумчивость и отвлекаться на другие дела. Очень часто так случается, что и у опытных хозяек с любовью подготовленные к выпечке пироги превращаются в несъедобный углерод. Результат - испорченное настроение, зря потраченное время и срыв намеченных планов. Избежать подобной ситуации поможет простой кухонный таймер на широко распространённом микроконтроллере ATtiny2313 компании Atmel.

При разработке таймера ставилась задача использования минимального количества деталей, простоты управления, простоты повторения устройства, возможности питания таймера как от трёх батареек АА (LR6) по 1,5 В, так и от внешнего адаптера.

Возможности и основные характеристики таймера:

1. Время установки таймера от 1 до 90 мин.
2. Звуковая сигнализация включения и выключения таймера.
3. Звуковая сигнализация окончания установленного времени.
4. Принудительное выключение таймера до истечения установленного времени.
5. Самостоятельное выключение таймера по истечении 10 с после его включения в случае, если после включения таймера время выдержки не было установлено или не запущен отсчёт времени.
6. Питание устройства как от трёх батареек, так и от внешнего адаптера напряжением от 7 до 10 В.
7. Ток потребления таймера в выключенном состоянии в несколько раз меньше тока саморазряда пальчиковых батареек.

Алгоритм работы таймера

Таймер включается нажатием кнопки энкодера. На индикаторе высвечивается минимально возможное время выдержки, равное 1 мин. Вращением ручки энкодера вправо происходит увеличение времени выдержки, а при вращении ручки энкодера влево - уменьшение времени, начиная с 90 мин. Таймер выключится самостоятельно, если в течение 10 с после установки времени не была нажата кнопка запуска. Для запуска отсчёта времени необходимо снова нажать кнопку энкодера. При этом таймер начинает отсчёт установленного времени, а на индикаторе единиц минут с периодом в 1 с будет мигать децимальная точка, индицирующая режим обратного отсчёта. По истечении установленного времени на индикаторе таймера высветится цифра 0 и прозвучат 5 тональных сигналов. После этого цифра 0 погаснет, а децимальная точка будет мигать ещё 10 с. По истечении и этого времени, в напоминание, снова прозвучат 5 тональных сигналов, и таймер выключится. Остановить работу таймера можно принудительно в любой момент, нажав кнопку энкодера.

Схема, конструкция и детали таймера

Принципиальная схема кухонного таймера показана на рис.1. «Мозгом» устройства является микроконтроллер (МК) IC1 типа ATtiny2313 фирмы ATMEL в корпусе DIP20. Микроконтроллер ATtiny2313 тактируется от внутреннего генератора частотой 8 МГц с выключенным предделителем на 8.

Рисунок 1

Для управления таймером применён инкрементный энкодер с кнопкой фирмы Bourns типа РЕС12-4220F-S0024 .В качестве индикатора установленного времени применён сдвоенный 7-сегментный индикатор красного свечения с общим катодом (ОК) фирмы SENIOR SEC5244WS .

Предусмотрена также возможность установки в этом таймере индикаторов с общим анодом (ОА) без изменения принципиальной схемы и платы. Для этого необходимо при программировании МК использовать другую прошивку, разработанную автором специально под индикаторы с ОА, В качестве звукового извещателя используется зуммер (Magnetic Buzzer) типа КХ-1205 фирмы King-state. В таймере использованы SMD-резисторы и конденсаторы типоразмера 0508.

Таймер собран на односторонней печатной плате из фольгированного текстолита размерами 48x56 мм с использованием нескольких перемычек, которые размещены со стороны установки деталей. Чертёж печатной платы таймера под ЛУТ показан на рис.2.

Рисунок 2

Для питания таймера от внешнего адаптера применён линейный интегральный стабилизатор 78L05 в корпусе SOP-8. Схема дополнительной платы для внешнего адаптера показана на рис.З, а чертёж печатной платы под ЛУТ - на рис.4. Её размеры 48x66 мм. Батарейный отсек для трёх гальванических элементов изготовлен из фольгированного текстолита. Причём его обратная сторона - это дополнительная плата внешнего адаптера питания. Если в питании устройства от сети нет необходимости, то собирать дополнительную плату не нужно, а вместо нее следует установить плату из фольгированного стеклотекстолита того же размера.

Рисунок 3

Рисунок 4

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

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

В данной статье пойдет речь о простом таймере для кухни и не только ….

Возможности и основные характеристики таймера.

1. Время установки таймера от 1 до 90 мин.

2. Звуковая сигнализация включения и выключения таймера.

3. Звуковая сигнализация окончания установленного времени.

4. Принудительное выключение таймера до истечения установленного времени.

5. Самостоятельное выключение таймера по истечении 10 с после его включения в случае, если после включения таймера время выдержки не было установлено или не запущен отсчёт времени.

6. Питание устройства как от трёх батареек, так и от внешнего адаптера напряжением от 7 до 10 В.

7. Ток потребления таймера в выключенном состоянии в несколько раз меньше тока саморазряда пальчиковых батареек.

Схема устройства.

Алгоритм работы

Таймер включается нажатием кнопки энкодера. На индикаторе высвечивается минимально возможное время выдержки, равное 1 мин. Вращением ручки энкодера вправо происходит увеличение времени выдержки, а при вращении ручки энкодера влево - уменьшение, начиная с 90 мин. Таймер выключится самостоятельно, если в течение 10 с после установки времени не была нажата кнопка запуска. Для запуска отсчёта времени необходимо снова нажать кнопку энкодера. При этом таймер начинает отсчёт установленного времени, а на индикаторе единиц минут с периодом в 1 с будет мигать децимальная точка, индицирующая режим обратного отсчёта. По истечении установленного времени на индикаторе таймера высветится цифра 0 и прозвучат 5 тональных сигналов. После этого цифра 0 погаснет, а децимальная точка будет мигать ещё 10 с. По истечении и этого времени, в напоминание, снова прозвучат 5 тональных сигналов, и таймер выключится. Остановить работу таймера можно принудительно в любой момент, нажав кнопку энкодера.

Основой таймера служит микроконтроллер ATtiny2313, который тактируется от внутреннего генератора частотой 8 МГц.Энкодер с кнопкой фирмы Bourns типа PEC12-4220F-S0024. Зуммер КХ-1205 фирмы Kingstate. В архиве 2 прошивки – под индикаторы с ОК и ОА, схема, схема и печатная плата в формате программы Eagle. Ниже предоставлена схмема адаптера питания таймера.

Адаптер питания

Фото готового устройства

В архиве 2 прошивки – под индикаторы с ОК и ОА, схема, схема и печатная плата в формате программы Eagle.

Обсудить на форуме

У бабушки моего сына скоро будет день рождения. Так как я его увлёк микроконтроллерами, то пришла идея подарить какой-то прибор, естественно, на микроконтроллере и сделанный своими руками. Как и все бабушки, наша бабушка не является продвинутым пользователем всяких устройств, и в принципе у нее ничего особенного из электроники нет. Так что, можно сделать любой, не очень сложный прибор.

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

Подумав немного, сын решил делать продвинутый кухонный таймер . Я ему немного помог со схемой. Основные функции нашего подарка:

  • Режим таймера до 3 часов
  • Режим секундомера
  • Громкий сигнал
  • Компактный размер
  • «Вечные» батарейки - аккумуляторы, зарядка как у телефона, по micro usb
  • Ну и конечно игры - кубик (случайное число от 1 до 6), лото, бомба (очень веселая игра)

Подбираем компоненты

В качестве индикатора, мы выбрали светодиодный трех-разрядный индикатор с общим анодом - у него всего 11 выводов, очень удобно. Купить не сложно, и в принципе, довольно экономично в энергопотреблении (но конечно не LCD).

Микроконтроллер - STM8S003F3P6 - с ним мы уже работали, так что все знакомо. ST-link уже есть.

Микросхема заряда и вся обвязка у МК, как у велокомпьютера .

В качестве пищалки, очень компактная и громкая пищалка HC0903A

Аккумулятор - LIR2032. Всего 45 mAh, но этого хватит на 40 часов непрерывной работы таймера. От кварцевого резонатора решили отказаться (нужны выводы), особенная точность нам не нужна, ну и у STM8 довольно точный внутренний генератор. Микросхема заряда - TP4056.

Управление - 2 тактовые кнопки. Прибор все время находится в спящем режиме, потребление меньше 5 мкА, спать может долго. Плату защиты для аккумулятора делать не стали, особенно не нужна. У МК нижний предел 3В, так что сильно не просядет. При включении идет музыка, включается индикатор (бросок тока), и если аккумулятор севший, то МК перегрузится и перейдем в спящий режим, что является сигналом к зарядке. Заряжается он током 100 мА около 40 минут, что в принципе очень быстро. Схему и программу можно скачать на github, ссылка в конце.

Корпус сын решил делать сам из монтажного короба 40 х 16 мм. Раскрасил акрилововыми красками, в качестве стекла вырезали кусок из DVD диска. Получилось очень симпатично.

Трассировку платы сын делал сам в Kicad. Расположение компонент придумал он же. Кнопки по бокам от индикатора, пищалка внизу, аккумулятор на ней. Все вошло плотно, ничего ни куда не болтается. Плата двухсторонняя. Делали из одностороннего стеклотекстолита толщиной 0.8мм с помощью метода холодного переноса тонера. Две половинки платы соединили и зафиксировали перемычками. Из разъемов - micro usb, питание и программирование.

Программа

Данный индикатор имеет общий анод, соответственно выводить в один момент времени можно только один разряд. Для вывода одновременно трёх разрядов необходима динамическая индикация.

Программно это делается очень просто. Задействуется таймер, и через равные интервалы времени, с большой частотой, например каждые 300 мкс, будем выводить по одному разряду по кругу - 1-2-3-1-2-3. Нам будет казать что цифры светятся одновременно, как в кино. Если дополнительно добавить еще пустые разряды, то можно управлять яркостью. То есть, будет такая схема вывода информации - 1-2-3-пусто-пусто-пусто-пусто-1-2-3-пусто-пусто… Управление яркостью нужна для того, чтобы снизить энергопотребление. Таким образом, например без применения яркости, один разряд потребляет 24 мА, а с применением можно сократить до 1-2 мА. При этом цифры все еще четко и далеко видно. Сын поигрался с частотой, яркостью, когда все перестало мерцать, ему понравилось. Оказалось, программировать такой типа индикатора довольно легко и удобно.
Второй сложный момент - это придумать простой, как говорится, интуитивно понятный интерфейс, когда у нас 3 разряда индикатора и 2 кнопки. Но я считаю, ему это удалось.

Придумали с кнопками так:

  • Правая кнопка - долгое нажатие, смена режимов, их три - Таймер, Секундомер, Игры
  • Правая кнопка - одиночное нажатие, смена подрежима. У таймера - это выбор предустановленных времен, у секундомера - выбор обычного секундомера и с подтверждением, у игры - соотв. Различные игры
  • Левая кнопка - одиночное нажатие - старт/стоп или ход в игре, долгое нажатие - режим настройки, программирования
С индикатором так:
  • Когда выбран таймер - то сразу выводится некое число из предустановленных настроек (Например 5,15,30 минут), их можно перепрограммировать, хранятся в ПЗУ
  • Когда выбран секундомер - то 000
  • Когда игры - L - лото, 6 - бомба, С - кубик.
  • На индикатор цифры выводятся хитро, так как разряда только три, то выводим максимальное число значащих элементов. Например, таймер - 200 минут 30сек - то выводим 200., если таймер 10мин 15с, то выводим 10.1, если 1 минута 25с, то 1.25. При этом чтобы понимать, что таймер или секундомер запущен, точка мигает в такт секундам.
  • Когда секундомер остановлен, например на 10 мин 25с то показываем попеременно 10. и.25, раз в секунду, чтобы видеть и секунды тоже.
Программа оказалась не такой простой, сын писал ее почти 3 недели в школьное время, с небольшой моей помощью. Очень много условий, разные флажки - старт, стоп, работа с памятью и т. д. Но результатом он был очень доволен.

Испытания

Первые испытания прошли в школе. Вместо кубика, гадание на оценках. Гадал весь класс. Потом бомба - супер игра. Прибор загадывает случайное время от 5 до 20секунд и начинает тикать каждую секунду. Вы его передаёте по кругу. Когда таймер дойдёт до нуля - сигнал взрыва. Тот, у кого в руках прибор, проиграл.

Первые испытания секундомера и таймера прошли на ура. Засекали разное время, сверяли с точными часами, ошибка 1-2 секунды на час. Отрабатывали звук сигнала.

Вручение подарка

Наступил день рождения. Бабушка быстро прошла обучение и была очень рада. Все вместе испытали Лото, полностью автоматизированное. Каждые 5 секунд прибор пищит и выдает новое число, из оставшихся в мешке. Играют все, водит прибор! Кто не успел тот опоздал.

Итоги

Итак, прибор получился просто отличный. Практика программирования очень интересная. Если вам тоже интересны микроконтроллеры, то можете сделать себе (или в подарок) такой же и попрограммировать. Вы обязательно научитесь:
  • делать платы
  • паять smd компоненты
  • программировать STM8
  • работать с аккумуляторами
  • обрабатывать кнопки
  • издавать различные звуки
  • работать с таймерами и обрабатывать временные события
  • бороться с энергопотреблением
На github выложена схема и плата в формате Kicad. Выложен начальный проект для STM8, там самое сложное - динамическая индикация, инициализация микроконтроллера, сложная обработка кнопок - короткое, двойное, долгое нажатие. Остальную программу предлагаю написать самостоятельно, это ведь так интересно!