» » » LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

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

Материалы:
- Arduino Uno
- LCD шилд (с кнопками, в проекте используется шилд от DFRobot)
- Коробка для корпуса
- Зуммер
- Инфракрасный датчик движения (PIR)
- Соединительные провода (мама/мама)
- Джек 2.1 мм
- Переходник для кроны 9В 2.1 мм / 5.5 мм
- Крона 9 В
- Часы реального времени
LCD часы, будильник и таймер с детектором движения на Arduino


Шаг первый. Модуль часов реального времени.
Часто модуль часов поставляют в виде конструктора, который приходится собирать самому. Обычно сборка не вызывает проблем, плюс производители выпускают инструкции по сборке их модуля. Также батарейка идёт в комплекте с часами, её хватит более чем на три года.
LCD часы, будильник и таймер с детектором движения на Arduino


Шаг второй. Коннектор питания.
Для упрощения подключения конструкции к Arduino автор использует джек на 2.1 мм с припаянными контактами. В коробке проделывают отверстие, и джек закрепляют клеем. Таким образом, подключение к Arduino не составит проблем. Крону просто установят на заднюю часть бокса. Если рассмотреть фото поближе можно заметить ещё одно отверстие в коробке. Его делать не нужно, это просто неудачная попытка сделать отверстие, в него джек просто не влез.
LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino


Шаг третий. Подсоединение проводов.
Автором были приобретены разноцветные провода мама/мама. Обошлись они недорого, но сильно облегчили процесс сборки. Проводники подключили к зуммеру, ПИР датчику движения, модулю часов, чтобы потом все это подсоединить к LCD шилду.
LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino


Шаг четвёртый. Подключение к LCD шилду.
На шилде имеется 5 рядов контактов, их пины на Arduino 1-5 соответственно. Имеется контакт для 5 В и GND, это всё и использовалось для подключения. Для передачи данных с зуммером, датчиком и часами реального времени используются аналоговые пины Arduino. Датчик с часами, конечно же, подключали к земле и питанию.
LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino


Шаг пятый. Установка в коробку.
В этом шаге конструкцию помещают в отдельный бокс. В первую очередь в коробку укладывают кабели от LCD шилда. Arduino закрепляют винтом нижней правой части корпуса. Для удержания микроконтроллера достаточно одного винта, тем более что автор использует такой бокс, в котором рёбра жёсткости располагаются на месте отверстий для двух других винтов. Далее, на Arduino устанавливают LCD шилд, кабели которого огибают плату с правой стороны (видно на фото ниже). Модуль часов отлично подходит для установки в левом нижнем углу, для его крепления используется один винт. Такая установка компонентов разрешает без проблем подключить джек 2.1 мм к Arduino. Датчик движения ставят так чтобы была возможность его снять, потому что он мешает подключить кабель USB к плате.
LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino


Шаг шестой. Программирование.
Как указано в начале статьи часы должны не только отображать время и дату, но и таймер с будильников. На шилде имеется 5 кнопок, которые можно запрограммировать. Использоваться они будут для различных режимов работы часов. Зуммер будет отрабатывать при нажатии каждой кнопки, а при работе будильника он подаст несколько сигналов.

Скетч для Arduino.
За основу автором взят скетч от Adafruit, его разработали для часов реального времени. В нём используют библиотеку RTClib. Далее, автор добавил кусок кода для LCD шилда от DFRobot (опция управления кнопками). И кусок кода добавил от себя исключительно под этот проект. Финальную версию кода можно скачать под статьёй. Ниже представлены фото с разными режимами работы часов.
LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino

LCD часы, будильник и таймер с детектором движения на Arduino


Шаг седьмой. Функции кнопок.
Как видно на фото ниже каждая кнопка на шилде подписана, пять из них были запрограммированы так:
- Первая кнопка (SELECT) — это меню. Кнопка отображает листание имеющихся функций (таймер, будильник).
- Вторая кнопка (LEFT) — эта кнопка отвечает за выбор функции. Дополнительная функция кнопки увеличение значения на 10 когда вводятся часы и минуты.
- Третья и четвёртая кнопки (UP, DOWN) — используются для увеличения и уменьшения значений часов и минут при настройке будильника и таймера. Дополнительная функция кнопок для переключения времени суток AM и PM.
- Пятая кнопка (RIGHT) — это кнопка ввода. Используется для принятия значения (настроенное время таймера, часов).
- Шестая кнопка (RST) — кнопка используется для перезагрузки Arduino.

LCD часы, будильник и таймер с детектором движения на Arduino


motionclock-master.zip [4,87 Kb] (скачиваний: 957)

Источник
Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.
Чтобы написать комментарий необходимо войти на сайт через соц. сети (или зарегистрироваться):
Обычная регистрация
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Добрый день, Гость!


Зарегистрируйтесь

А затем...

Добавьте самоделку

Или...

Добавьте тему

Онлайн чат

Опрос
Сколько по времени, чаще всего, Вы делаете самоделку?

Последние комментарии

Вот почему и "вешаются" иностранцы от русского языка! ...))) Помните, как у покойного Задорнова? Муж-американец, с прекрасным знанием русского спрашивает у жены: - Дорогая, тебе сварить...
А что это за такая "бочка для приготовления пиццы"?...
Хотя можно подумать что печь из бочки достали...
Газовая печь из бочки для приготовления пиццы...
бочковая пицца? Маринованная что ли? Главное чтоб не из мусорной бочки Продолжаем головоломку... у кого какие версии? Кстати, почему гугл частенько переводит болгарку как...
Все комментарии