Учебный проект. Электронный замок на Ардуино

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

Устройство должно удовлетворять следующим требованиям:

  1. ввод кода осуществить при помощи гибкой клавиатуры 4/4 типа;
  2. использовать дисплей с выводом информации о состоянии запорного механизма в виде текста на каждый момент действия запорного механизма, включая режим ожидания;
  3. реализовать цветовую индикацию отображающую состояние запорного механизма;
  4. реализовать звуковой сигнал изменения положения защелки запорного устройства;
  5. реализовать отскок двери после отпирания замка кода;
  6. монтаж деталей и электроники произвести с тыльной стороны, при этом сохранить визуальный доступ ко всем компонентам для последующего представления макета;
  7. с лицевой стороны разместить дисплей, клавиатуру и цветовую индикацию;
  8. общий габарит макета выполнить в пределах 40х40х30 см.

Разработанный макет базируется на материнской плате Arduino UNO, что обуславливает применение большинства используемых компонентов.

Основным условием является то, что выходное напряжение с платы Arduino UNO – составляет максимум 5 вольт и 50 млА на каждый цифровой выход. Соответственно, номинал компонентов следует подбирать под эти параметры:

  1. Светодиоды (красный, зеленый) — от 3 до 5 вольт.
  2. Диммер — от 3 до 5 вольт.
  3. Дисплей со встроенным драйвером — 5 вольт.
  4. Сервопривод — 5 вольт.
  5. Гибкая клавиатура — 5 вольт.
  6. Плата АУ питание до 9 вольт.
  7. Батарея «Крона» — 9 вольт.

Для разработки кодового замка на базе микроконтроллера необходимы следующие элементы:

  • микроконтроллер Arduino Uno R3;
  • матричная клавиатура 4х4;
  • монохромный дисплей lcd1602;
  • провода;
  • макетная плата (400 точек);
  • коннектор для батареи (крона) 9 в;
  • светодиоды;
  • сервопривод sg90;
  • зуммер или пьезоэлемент;
  • пластиковая язычковая защелка.

Arduino Uno R3:

Arduino Uno R3

Матричная клавиатура выполнена в виде матрицы 4×4, каждая кнопка является областью воздушного зазора между двумя диэлектрическими слоями с нанесенным на них токопроводящим покрытием. Дорожки покрытия одного слоя нанесены горизонтально (выводы 1—4), а другого — вертикально (выводы 5—8). Нажатие на кнопку приводит к соединению дорожки одного слоя с дорожкой другого и замыканию одного из выводов 1—4 с одним из выводов 5—8.

Характеристика матричной клавиатуры:

  • Габариты: 68×77×0,8 мм;
  • Рабочее напряжение: до 12 В;
  • Максимальный ток: 100 мА;
  • Сопротивление изоляции: >100 МОм;
  • Сопротивление контактов: <200 Ом;
  • Вес: 10 г.

Монохромный дисплей LCD 1602A представляет собой электронный модуль, основанный на драйвере HD44780 от Hitachi. LCD1602 имеет 16 контактов и может работать в 4-битном режиме (с использованием только 4 линии данных) или 8-битном режиме (с использованием всех 8 строк данных), так же можно использовать интерфейс I2C.

Технические параметры:

  • Напряжение питания: 5 В;
  • Размер дисплея: 2.6 дюйма;
  • Тип дисплея: 2 строки по 16 символов;
  • Цвет подсветки: синий;
  • Цвет символов: белый;
  • Габариты: 80мм x 35мм x 11мм.

Для сборки компонент была использована макетная плата.

Батарейка подсоединялась с помощью контактов

Куда же без диодов…

Защелка замка двигается при помощи сервопривода. Маленький сервопривод SG90 вполне подходит для использования. Имеет три вывода: плюс, минус и сигнал. Вращение ротора осуществляется на 180 градусов. Обеспечиваемый момент вращения при 4,8 В около 1,98 кг*см. Скорость вращения — 60 градусов за 0,14 сек. Рабочее напряжение от 3,5 до 7,2 Вольт.

Cервопривод SG90
Схема соединения элементов с контроллером

Подключаем LCD дисплей к плате ардуино. SCL вывод подсоединяем к аналоговому пину А4,а SDS вывод к пину А5. Провод питания подключаем к макетной плате.

Далее подсоединяем матричную клавиатуру 4х4 к цифровым пинам на Arduino (от D9 до D2). Подключение можно провести при помощи проводов питания или специальных коннекторов.

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

Следующим шагом подключаем пьезоэлемент к макетной плате и с помощью проводов питания соединяем с пином D13 на Arduino.

Подключим питание

Затем необходимо подготовить макетную установку на которой будет расположен весь механизм. Макет состоит из трех деревянных реек прикрепленных саморезами к основанию.

Закрепляем готовую дверцу со всем механизмом к макетной установке.

Полностью готовый электронный замок

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *