0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как сделать простой беспроводной автоматический замок из обычного «шпингалета» без Arduino

Содержание

У Самоделкина: Самоделки своими руками

Сделай сам своими руками

Самодельный электрозамок с дистанционным управлением

Электрозамок с дистанционным управлением на двери или калитку: фото пошагового изготовления самоделки своими руками.

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

Материалы для самоделки:

  • -две батарейки на 9 В типа «крона».
  • -коннекторы для батареек.
  • -небольшой фанерный кусочек.
  • -мотор редуктор из Китая.
  • -обычный медицинский шприц.
  • -дистанционное реле на 2 или 4 канала с пультом управления (заказать так же можно из Китая если такого нет, стоит в районе 200-500
  • рублей.
  • -провода в резиновой или силиконовой изоляции.
  • -металлическая гайка.
  • -длинный болт под гайку.
  • -дверной «шпингалет».
  • -самозатвердевающий пластик для рукоделия (существует много видов, можно купить и в Китае, но так же стоит поискать в своем городе в магазинах для рукоделия).

Необходимо вырезать из фанеры основу для нашего замка, размер делайте удобный для вас, но так, чтобы на нем могла уместиться вся электроника. Затем берём «шпингалет», прикладываем его к фанерной заготовочке и отмечаем карандашом или маркером отметки под места крепежа «шпингалета»:

Затем прикручиваем «шпингалет» к фанерке.

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

Устанавливаем реле на предназначенные ей «ножки» и так же прикручиваем с помощью винтов и отвёртки:

Затем берём самозатвердивающийся пластик, который кстати очень похож на пластилин и в начальном виде по свойствам очень с ним похож, благодаря этому его можно превратить в практически любую форму использую только свои руки, что очень удобно. Следующим инструкции вашего пластика, формируем небольшое колечко и наносим его на гайку, так как показано на фото. После чего приклеиваем его к ручке «шпингалета» всё тем же самозатвердивающимся пластиком так, как показано на фото, и ждём нужное количество времени пока пластик не застынет:

Берём длинный болт под гайку и вкручиваем его в нашу заготовочку, примерно на треть:

Теперь необходимо взять мотор редуктор, стоит он всего лишь в районе 60 рублей и припаять к его контактам пару проводов, желательно разного цвета, чтобы не допустить ошибки при подключении:

Приклеиваем отрезок от колпачка шприца к оси мотора, а оставшуюся половину надеваем на болт так, как показано на фото:

Тестируем наш механизм для открытия «шпингалета».
Подключаем мотор-редуктор к источнику питания, который в нашем случае является кроной на 9 вольт, после подключения мотор начинает вращать болт вокруг своей оси, тем самым выкручивая его из гайки, но поскольку болт в горизонтальной плоскости находится в неподвижном состоянии, то гайка начинает движение в противоположную сторону выкручивания и из-за этого «шпингалет» двигаться вперёд. Если же поменять кантакты местами (изменяя этим полярность) мотор начнет движение в другую сторону и «шпингалет» начнет движение обратно.
Если вы всё сделали правильно и у вас всё работает, то можно продолжать сборку:

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

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

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

В этом видео, подробно показан процесс изготовления данной самоделки.

Сейф с кодовым замком на Arduino

После очередного конфликта между детьми (младшее поколение безнадёжно испортило домашнюю работу старшего) я принял решение изготовить детский, но полнофункциональный сейф, для надёжного хранения домашних работ 😉

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

Запланированный принцип действия всего устройства прост: деревянная коробка, кодовый замок управляемый Arduino, и механический засов, сдвигаемый сервоприводом. Итак, приступим!

Механическая часть

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

Читать еще:  Как сделать девон из кран-буксы

Электронные компоненты

Здесь я приведу список используемой электроники со ссылками на продавцов и приблизительными ценами.

Итого, общие расходы на электронику составляют около 11$.

Конечно, компоненты можно найти и дешевле, если заказывать сразу по несколько штук и экономить на стоимости доставки.

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

Схема подключения

Вся система питается от одного аккумулятора 18650. Через выключатель и модуль защиты TP4056, напряжение от него поступает на повышающий модуль до 5 вольт (полярность на выходе повышающего модуля я указал неточно, при подключении проверьте полярность тестером). От него питается контроллер и сервопривод. Клавиатура же не требует отдельного питания. Модуль защиты аккумулятора TP4056 может работать и как зарядное устройство, если на него подать стабилизированное напряжение 5вольт на контакты + и + (на схеме они не задействованы, расположены в верхней части защитной платы) или просто на его разъём Micro-USB. Получить это напряжение можно с любого современного зарядного устройства от мобильника.

Логика работы сейфа предполагает, что пользователь должен включать питание кнопочным выключателем только когда требуется открыть или закрыть замок, остальное время простоя выключатель должен быть выключен для экономии заряда аккумулятора. Конечно можно было заморочиться с режимом ожидания, засыпанием и просыпанием контроллера, выпаиванием светодиодов с контроллера для экономии питания и т.д., но всё таки это только первый пробный образец! Так что пока — просто выключатель, и может быть в будущем выведу наружу шнур для внешней зарядки аккумулятора… На тот случай, если пользователь забудет выключатель во включённом положении и разрядит аккумулятор.

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

Если конструкция приживётся в доме, можно заказать в фирме Смайл-мебель крой Ламинированной ДСП для сборки более красивой коробки, и продумать систему резервного питания или внешней зарядки аккумулятора.

Программная часть

Полный текст скетча я приведу в конце статьи, а пока озвучу только самые важные моменты.

Контроллер постоянно опрашивает клавиатуру. Кнопка # отвечает за ЗАКРЫТИЕ замка в любом случае. Пароль указывается в начале скетча, может быть любой длины, и в нём можно использовать любые символы клавиатуры за исключением закрывающего символа #.

Кнопки сброса нет. Перед паролем можно нажимать любые кнопки, затем нажать кнопки пароля в нужной последовательности и замок откроется!

Любое движение сервопривода (на открытие или на закрытие) сопровождается двухсекундной паузой после команды, на случай если перемещение будет слишком медленным или на пути шпингалета окажется некое препятствие. После этой паузы — происходит Detach, то есть сервопривод логически отключается от контроллера и перестаёт давить на шпингалет. Таким образом, если в это время вы захотите провернуть сервопривод рукой, то вы не встретите сопротивления.

В тексте программы, командами myservo.write(хх); задаются углы поворота сервопривода для открытия и закрытия замка. В моём случае это 40 и 140 градусов соответственно, но вы можете задавать свои значения, в интервале от нуля до 180.

Скетч снабжён отладочными сообщениями в порт, которые не содержат пароль

Демонстрация работы

Скетч

#include
#include
Servo myservo;
const byte ROWS = 4; // 4 строки
const byte COLS = 4; // 4 столбца
char keys[ROWS][COLS] = <
<‘1′,’2′,’3′,’A’>,
<‘4′,’5′,’6′,’B’>,
<‘7′,’8′,’9′,’C’>,
<‘*’,’0′,’#’,’D’>
>;
char pass[] = <‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’>; // тут задаётся пароль каждый символ в отдельных кавычках
int passlen=0;
int r=0;
byte rowPins[ROWS] = <5,6, 7, 8>;
byte colPins[COLS] = <9, 10, 11, 12>;

Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

void setup() <
pinMode(1, OUTPUT);
pinMode(2, OUTPUT);
digitalWrite(1, LOW);
digitalWrite(2, HIGH);

Умный электронный замок на Ардуино, работающий по Bluetooth — входная дверь как у Спайдермена

На днях я пересматривал фильм «Новый Человек-Паук» и в одной сцене Питер Паркер дистанционно открывает и закрывает дверь со своего ноутбука. Как только я увидел это, то сразу же понял, что и мне нужен такой электронный замок на входную дверь.

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

Шаг 1: Список материалов

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

  • паяльник
  • клеевой пистолет
  • дрель
  • сверло
  • сверло для направляющего отверстия
  • канцелярский нож
  • компьютер с программой Arduino IDE

Шаг 2: Как действует замок

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

Рычаг сервопривода, соединенный со шпингалетом, будет закрывать его (на 0°) и открывать (на 60°), с помощью команд, получаемых через модуль Bluetooth.

Шаг 3: Схема монтажа проводов

Давайте сначала подключим сервопривод к плате Arduino (хочу заметить, что, хотя у меня использована плата Arduino Nano, в плате Uno расположение выводов точно такое же).

  • коричневый провод сервопривода – заземляющий, его подключаем к земле на Arduino
  • красный провод – плюс, его подключаем к разъему 5В на Arduino
  • оранжевый провод – вывод истока сервопривода, его подключаем к 9-му выводу на Arduino

Я советую вам проверить работу сервопривода, прежде чем продолжить сборку. Для этого в программе Arduino IDE в примерах выбираете Sweep. Убедившись в том, что серво работает, можем подключать Bluetooth-модуль. Нужно соединить вывод rx модуля Bluetooth с tx выводом Arduino, и tx вывод модуля с rx выводом Arduino. Но пока не делайте этого! Когда эти соединения будут спаяны, вы уже не сможете загрузить никакие коды на Arduino, поэтому сначала загрузите все ваши коды и только после этого паяйте соединения.

Вот схема соединений модуля и микроконтроллера:

  • Rx модуля – Tx платы Arduino
  • Tx модуля – Rx платы
  • Vcc (положительный вывод) модуля – 3,3v платы Arduino
  • Ground соединяем с Ground (заземление с заземлением)

Если объяснение кажется вам непонятным, следуйте представленной схеме соединений проводов.

Шаг 4: Испытание

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

Читать еще:  Как сделать столик на подлокотник дивана

Шаг 5: Корпус для электрокомпонентов

Я решил поместить в корпус только контроллер и модуль Bluetooth, а сервопривод оставить снаружи. Для этого на куске картона обводим контур платы Arduino Nano и добавляем по 1 см пространства по периметру и вырезаем. После этого также вырезаем еще пять сторон корпуса. В передней стенке нужно будет прорезать отверстие под шнур питания контроллера.

Размеры сторон корпуса:

  • Дно – 7,5х4 см
  • Крышка – 7,5х4 см
  • Левая боковая стенка – 7,5х4 см
  • Правая боковая стенка – 7,5х4 см
  • Передняя стенка – 4х4 см (с прорезью под шнур питания)
  • Задняя стенка – 4х4 см

Шаг 6: Приложение

Для управления контроллером вам нужен гаджет на Android или Windows со встроенным Bluetooth-ом. У меня не было возможности проверить работу приложения на яблочных устройствах, может быть, будут нужны какие-нибудь драйвера.

Уверен, кое у кого из вас есть возможность проверить это. Для Андроида скачайте приложение Bluetooth Terminal, для Windows скачайте TeraTerm. Затем нужно подключить модуль к смартфону, имя должно быть linvor, пароль – 0000 или 1234. Как только сопряжение установится, откройте установленное приложение, войдите в опции и выберите «Установить соединение (небезопасное)». Теперь ваш смартфон – монитор последовательного интерфейса Arduino, то есть вы можете обмениваться данными с контроллером.

Если вы введете 0, дверь закроется, а на экране смартфона будет сообщение «Дверь закрыта».
Если вы введете 1, то увидите, как дверь открывается, а на экране будет сообщение «Дверь открыта».
На Windows процесс тот же самый, за исключением того, что установить нужно приложение TeraTerm.

Шаг 7: Монтируем шпингалет

Сначала вам нужно соединить сервопривод со шпингалетом. Для этого с монтажных отверстий корпуса привода нужно срезать заглушки. Если мы положим сервопривод, монтажные отверстия должны быть вровень со шпингалетом. Затем нужно поместить рычаг сервопривода в прорезь шпингалета, туда, где была ручка шпингалета. Проверьте, как ходит замок в корпусе. Если все нормально, закрепите рычаг сервопривода клеем.

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

Шаг 8: Питание

Чтобы завершить устройство, вам понадобятся источник питания, шнур и штекер мини-usb для соединения с Arduino.
Соедините вывод земли источника питания с выводом земли мини-порта usb, соедините красный провод с красным проводом мини-порта usb, потом протяните провод от замка до дверной петли, а от нее протяните до розетки.

Шаг 9: Код

Шаг 10: Законченный замок на базе Arduino

Наслаждайтесь своим замком с дистанционным управлением, и не забудьте «случайно» запереть друзей в комнате.

Рассказываю как сделать какую-либо вещь с пошаговыми фото и видео инструкциями.

Умный электронный замок на Ардуино, работающий по Bluetooth — входная дверь как у Спайдермена. Необычный кодовый замок на Arduino Кодовый замок на ардуино с самодельной клавиатурой

Умный электронный замок на Ардуино, работающий по Bluetooth — входная дверь как у Спайдермена. Необычный кодовый замок на Arduino Кодовый замок на ардуино с самодельной клавиатурой

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

Комплектующие

Итого: $33,5 и 350руб.

Не так уж и мало, скажете вы, и будете, определенно правы, но ведь за удовольствие надо платить! А собрать, что-то своими руками всегда приятно. К тому-же конструкцию можно сильно удешевить, если использовать голый МК без Arduino.

Подготовка к сборке

Программирование.

Фото и видео


Блок питания


Клавиатурка


Шпингалет (соединен с актуатором металлической спицей и на которую надета термоусадка для красоты)

Видео процесса работы устройства:

В данном уроке мы научимся делать простую систему, которая будет отпирать замок по электронному ключу (Метке).

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

В этом уроке нам понадобится:

Для реализации проекта нам необходимо установить библиотеки:

2) Теперь нужно подключить Зуммер, который будет подавать сигнал, если ключ сработал и замок открывается, а второй сигнал, когда замок закрывается.

Зуммер подключаем в следующей последовательности:

3) В роли отпирающего механизма будет использоваться сервопривод. Сервопривод может быть выбран любой, в зависимости от требуемых вам размеров и усилий, который создает сервопривод. У сервопривода имеется 3 контакта:

Более наглядно Вы можете посмотреть, как мы подключили все модули на картинке ниже:

Теперь, если все подключено, то можно переходить к программированию.

Шаг 10: Законченный замок на базе Arduino

Наслаждайтесь своим замком с дистанционным управлением, и не забудьте «случайно» запереть друзей в комнате.

Arduino является лучшей системой для копирования какого-либо оборудования. Большинство идей не смогли бы воплотиться без нее. Давно существует такая мысль: создать специальный кодовый замок на ардуино. Для его открытия необходимо зажатие определенной клавиши. При этом замок не должен открываться, даже если знать нужную кнопку. Чтобы его отрыть необходимо выдержать определенные интервалы, используя мышечную память. Такое преступник не сможет совершить. Но это все лишь теория.

Чтобы его собрать нужно воспользоваться специальным прибором прямоугольных импульсов, а также несколько счетчиков и ворох. Но готовое устройство имело бы большие габаритные размеры и его неудобно было бы использовать. Как правило, такие мысли не дают покоя. Первым этапом при воплощении мечты стало создание программы под Arduino. Именно она будет служить в качестве кодового замка. Для того чтобы открыть его понадобится нажать не одну клавишу, а несколько, причем делать это одновременно. Готовая схема выглядит таким образом:

Качество картинки не лучшее, но подключение выполняется к земле, D3, D5, D7, D9 и D11.

Код представлен ниже:

Чтобы не возникало лишних вопросов по коду, следует разъяснить некоторые моменты. Функция setup используется для назначения портов. Следующая функция – Input_Pullup, которая необходима для увеличения напряжения пина на 5 В. Это осуществляется с помощью резистора. Благодаря этому не будут возникать различные короткие замыкания. Для большего удобства рекомендуется применять функцию blinktwice. Вообще при создании различных программ нужно пробовать другие функции.

Читать еще:  Делаем бумеранг из куска натуральной древесины

После назначения функций происходит считывание сигнала с портов. Если кнопка нажата, то это будет обозначаться цифрой 1, а если нет – 2. Далее, происходит анализ всех значений. Например, появилась такая комбинация, как 0,1,1. Это означает, что первая клавиша нажата, а остальные две нет. Если все значения выполняются верно, то условие 8 тоже верно. Об этом свидетельствует загоревшийся светодиод на передней панели. Далее необходимо вписать определенный код, который будет служить для открывания двери.

Последние элементы кода служат для сбрасывания значений счетчика. Такая функция выполняется, если после последнего нажатия клавиши прошло более 10 секунд. Без этого кода можно было перебрать все возможные варианты, хоть их достаточно много. После создания данного устройства необходимо его протестировать. Еще

Сегодня урок о том как использовать RFID-ридер с Arduino для создания простой системы блокировки, простыми словами — RFID-замок.

RFID (англ. Radio Frequency IDentification, радиочастотная идентификация) — способ автоматической идентификации объектов, в котором посредством радиосигналов считываются или записываются данные, хранящиеся в так называемых транспондерах, или RFID-метках. Любая RFID-система состоит из считывающего устройства (считыватель, ридер или интеррогатор) и транспондера (он же RFID-метка, иногда также применяется термин RFID-тег).

В уроке будет использоваться RFID-метка с Arduino. Устройство читает уникальный идентификатор (UID) каждого тега RFID, который мы размещается рядом со считывателем, и отображает его на OLED-дисплее. Если UID тега равен предопределенному значению, которое хранится в памяти Arduino, тогда на дисплее мы увидим сообщение «Unlocked» (англ., разблокировано). Если уникальный идентификатор не равен предопределенному значению, сообщение «Unlocked» не появится — см. фото ниже.

Детали, необходимые для создания этого проекта:

  • RFID-ридер RC522
  • OLED-дисплей
  • Макетная плата
  • Провода

Общая стоимость комплектующих проекта составила примерно 15 долларов.

Шаг 2: RFID-считыватель RC522

В каждой метке RFID есть небольшой чип (на фото белая карточка). Если направить фонарик на эту RFID-карту, можно увидеть маленький чип и катушку, которая его окружает. У этого чипа нет батареи для получения мощности. Он получает питание от считывателя беспроводным образом используя эту большую катушку. Можно прочитать RFID-карту, подобную этой, с расстояния до 20 мм.

Тот же чип существует и в тегах RFID-брелка.

Каждый тег RFID имеет уникальный номер, который идентифицирует его. Это UID, который показывается на OLED-дисплее. За исключением этого UID, каждый тег может хранить данные. В этом типе карт можно хранить до 1 тысячи данных. Впечатляет, не так ли? Эта функция не будет использована сегодня. Сегодня все, что интересует, — это идентификация конкретной карты по ее UID. Стоимость RFID-считывателя и этих двух карт RFID составляет около 4 долларов США.

Шаг 3: OLED-дисплей

В уроке используется OLED-монитор 0.96″ 128×64 I2C.

Это очень хороший дисплей для использования с Arduino. Это дисплей OLED и это означает, что он имеет низкое энергопотребление. Потребляемая мощность этого дисплея составляет около 10-20 мА, и это зависит от количества пикселей.

Дисплей имеет разрешение 128 на 64 пикселя и имеет крошечный размер. Существует два варианта отображения. Один из них монохромный, а другой, как тот, который использован в уроке, может отображать два цвета: желтый и синий. Верхняя часть экрана может быть только желтой, а нижняя часть — синей.

Этот OLED-дисплей очень яркий и у него отличная и очень приятная библиотека, которую разработала компания Adafruit для этого дисплея. В дополнение к этому дисплей использует интерфейс I2C, поэтому соединение с Arduino невероятно простое.

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

Шаг 4: Соединяем все детали

Связь с платой Arduino Uno очень проста. Сначала подключим питание как считывателя, так и дисплея.

Будьте осторожны, считыватель RFID должен быть подключен к выходу 3,3 В от Arduino Uno или он будет испорчен.

Так как дисплей также может работать на 3,3 В, мы подключаем VCC от обоих модулей к положительной шине макета. Затем эта шина подключается к выходу 3,3 В от Arduino Uno. После чего соединяем обе земли (GND) с шиной заземления макета. Затем мы соединяем GND-шину макета с Arduino GND.

SCL → Аналоговый Pin 5

SDA → Аналоговый Pin 4

RST → Цифровой Pin 9

IRQ → Не соединен

MISO → Цифровой Pin 12

MOSI → Цифровой Pin 11

SCK → Цифровой Pin 13

SDA → Цифровой Pin 10

Модуль RFID-считывателя использует интерфейс SPI для связи с Arduino. Поэтому мы собираемся использовать аппаратные штыри SPI от Arduino UNO.

Вывод RST поступает на цифровой контакт 9. Контакт IRQ остается несвязным. Контакт MISO подключается к цифровому выходу 12. Штырь MOSI идет на цифровой контакт 11. Контакт SCK переходит на цифровой контакт 13, и, наконец, вывод SDA идет на цифровой вывод 10. Вот и все.

Считыватель RFID подключен. Теперь нам нужно подключить OLED-дисплей к Arduino, используя интерфейс I2C. Таким образом, вывод SCL на дисплее переходит к аналоговому выводу Pin 5 и SDA на дисплее к аналоговому Pin 4. Если теперь мы включим проект и разместим RFID-карту рядом с ридером, мы увидим, что проект работает нормально.

Шаг 5: Код проекта

Чтобы код проекта был скомпилирован, нам нужно включить некоторые библиотеки. Прежде всего, нам нужна библиотека MFRC522 Rfid.

Чтобы установить её, перейдите в Sketch -> Include Libraries -> Manage libraries (Управление библиотеками). Найдите MFRC522 и установите её.

Нам также нужна библиотека Adafruit SSD1306 и библиотека Adafruit GFX для отображения.

Установите обе библиотеки. Библиотека Adafruit SSD1306 нуждается в небольшой модификации. Перейдите в папку Arduino -> Libraries , откройте папку Adafruit SSD1306 и отредактируйте библиотеку Adafruit_SSD1306.h . Закомментируйте строку 70 и раскомментируйте строку 69, т.к. дисплей имеет разрешение 128×64.

Сначала мы объявляем значение метки RFID, которую должен распознать Arduino. Это массив целых чисел:

Затем мы инициализируем считыватель RFID и дисплей:

Rfid.PCD_Init(); display.begin(SSD1306_SWITCHCAPVCC, 0x3C);

После этого в функции цикла мы проверяем тег на считывателе каждые 100 мс.

Если на считывателе есть тег, мы читаем его UID и печатаем его на дисплее. Затем мы сравниваем UID тега, который мы только что прочитали, со значением, которое хранится в кодовой переменной. Если значения одинаковы, мы выводим сообщение UNLOCK, иначе мы не будем отображать это сообщение.

Конечно, вы можете изменить этот код, чтобы сохранить более 1 значения UID, чтобы проект распознал больше RFID-меток. Это просто пример.

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector