Мобільна версія Форум Arduino Документація Гарантійні умови 0 0
UA RU
Графік роботи магазину:
Пн-Пт: 8.00 - 19.00
Сб: 10.00 - 17.00
Нд: вихідний
Каталог
Напиши статтю і отримай знижку!

Кухонный таймер на Arduino

2012-02-17

Всі статті →

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

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

Шаг 1. Компоненты

Вам понадобятся:

Arduino – я использовал duemillanove, но вы всегда можете взять другую вместо нее.

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

Кнопка – думаю, что можно использовать кнопку, встроенную в протошилд!

10 Bar LED Bar Graph – можно использовать для этого  10 светодиодов, я нашел мои в сломанном CD плеере.

Пьезо-электрическая пищалка –я использовал элемент от старого кухонного таймера со сломанным чипом.  В общем-то, это и стало причиной, почему я захотел сделать собственный таймер на основе Ардуино!

Резистор – для подключения кнопки я использовал  подтягивающий резистор  в 10k, который выпаял из машинки для посева семян.

Дополнительно:

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

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

Шаг 2. Строим!


Проще всего показать, как соединена схема, это нарисовать ее в программе Fritzing (см. выше). Теперь о схеме. Как вы видите, одна сторона линейки из 10 светодиодов соединена с Gnd выводом Arduino, в то время, как каждая ножка с другой стороны присоединена к цифровому выводу Arduino. Это значит, что когда на выводе Arduino установлен высокий уровень (HIGH), соответствующий сегмент светодиода загорится. Выводы используемые для соединения с Arduino, 3, 4, 5, 6, 7, 8, 10, 11, 12, и 13, а вывод 2 резервируется для кнопки, и ШИМ (PWM) вывод 9 зарезервирован для использования пьезо-электрического звукового сигнала. Кнопка подсоединена проводком, таким образом, что когда она нажата напряжение 5В подается на вывод 2 и на нем появляется высокий логический уровень (HIGH), а когда кнопка не нажата, вывод на вывод 2 будет поступать низкий логический уровень (LOW). Пьезо звуковой сигнал соединен с ШИМ выводом 9, таким образом мы можем имитировать квадратную синусоидальную волну, используя analogWrite, который создаст звуковой сигнал, предупреждающий, что время истекло.


ШАГ 3: Кодируйте! Или используйте мой код

 

Чтобы запустить кухонный таймер, накормите вашу Ардуинку качественным, вкусненьким кодом. Я написал достаточно простой (но страшненький на вид) код, который может вести все это. Те, кому достаточно, чтобы система просто работала, могут загрузить его сейчас.

Объяснить немного сложнее, поэтому я сделаю краткий обзор, а остальное достаточно понятно:

Сначала мы инициализируем все выводы и функции, которые собираемся использовать, чтобы убедиться, что наша Arduino будет с ними работать. Мы используем const int чтобы показать, что вывод, который мы инициализируем, является константным и не изменится. Переменные могут также быть инициализированы, но, как правило, они не является константными (постоянными), так как они установлены по всему скрипту. Затем мы проверяем, была ли кнопка (подключенная к выводу 2) нажата или нет, и если это так, то загорается следующий сегмент, и добавляет к tastyTimeVariable. Это означает, что мы можем использовать функцию else, чтобы указать необходимый отрезок времени, в зависимости от величины нашего tastyTimeVariable. Вы увидите, что мы задерживаем  "300L * 1000L", что соответствует примерно 5 минутам, так как 300,000 миллисекунд = 300 секунд, и 300/60 = 5. Затем мы говорим Arduino, что если tastyTimeVariable равняется чему угодно, кроме 0 (другими словами, кнопка нажата, и какой-то отрезок времени выбран) включить графический дисплей, и пищать пищалкой. Мы можем менять длительность звукового сигнала, меняя команду.

Я также написал комментарии в скрипте, чтобы помочь тем, кто хочет понять, как это работает, или модифицировать для своих нужд.

Добавляю сообщение, присланное мне от одной читательницы, она пишет:

Я изменила код кухонного таймера, т.к. он был очень длинным. Написанный мною код делает то же самое, но является частью оригинального кода. Надеюсь, вы не возражаете. Вот линк к нему. Для работы этого скетча необходима библиотека Utility, если она у вас не установлена - скачайте и сохраните в подпапку libraries папки, в которую установлен ваш Arduino IDE

Это фантастический кусок кода, поэтому попробуйте его, процесс инсталляции тот же. Большое спасибо за присланный код!

 

Шаг 4 Готовим!

 

Да, подключаем устройство к USB адаптеру. Не думаю, что оно очень защищено от воды, поэтому убедитесь, что руки сухие перед тем, как пользоваться. И все, что вы делаете, теперь на вашей ответственности, поэтому не пытайтесь потом предъявлять мне иск.  

 */ Usage Instructions

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

 

 Наслаждайтесь /*

 

 Anonymouse197, Ari Cooper Davis ©, anonymouse197[at]gmail.com

Ваша оцінка статті:

Відмінно
Добре
Задовільно
Погано
Дуже погано

Загальна оцінка:

Оцінка "Кухонный таймер на Arduino"
5 з 5
зроблена на основі 1 оцінки 1 клієнтських відгуку.

Дякуємо Вам за звернення! Ваш відгук з'явиться після модерації адміністратором.
Кузьма
18.11.2020 21:36:55
Все прекрасно работает без шилда!Автору огромное спасибо))))
оплата картами Visa і MasterCard