Технология RFID для закрытия/открытия замка - Своими руками
Своими руками

Технология RFID для закрытия/открытия замка

>

Технология RFID для закрытия/открытия замкаТехнология RFID для закрытия/открытия замкаRFID ( радиочастотная идентификация), используется во многих областях жизни современного общества. Самые простые примеры – это домофонные ключи, элемент противоугонной системы в автомобильных ключах или технология NFC в наших смартфонах.
Из данной статьи мы с вами узнаем, как использовать эту технологию для открытия/закрытия замка. В качестве привода запирающего устройства будет использоваться сервопривод, а некоторые детали будут напечатаны на 3D-принтере.
Инструменты и материалы:
-Arduino Uno;
-Перемычки;-Макетная плата;-Считыватель RFID MFRC522;-RFID-метка / карта;
-16 x 2 жидкокристаллический дисплей;
-Потенциометр;
-3D-принтер;
-Микро сервопривод;-Толкатель;
Шаг первый: схема
Представленная на фото схема показывает подключение ЖК-дисплея и сервопривода Micro.
Считыватель RFID подключается следующим образом:
RFID – Arduino
3,3 В – 3,3 В
RST – 9
GND – GND на макете
IRQ не подключается
MISO – 12
MOSI – 11
SCK – 13
SDA – 10
Технология RFID для закрытия/открытия замкаТехнология RFID для закрытия/открытия замкаШаг второй: 3D-печать
Файлы для печати 3D-деталей для замка мастер использовал из различных источников.
Файл для печати лицевой панель ЖК-экрана можно скачать здесь.
RFID держатель печатается из этого файла.
Файл для печати замка можно скачать здесь.
При чем не обязательно использовать данные детали. Можно адаптировать имеющиеся в наличии предметы, включая замок.
Шаг третий: программирование
Для загрузки библиотеки, кода и просмотра идентификатора RFID-карт просматриваем видео ниже. Вместо Arduino IDE мастер использует Arduino create.

Следуя инструкциям видео, на мониторе последовательного порта после сканирования RFID- карты будет код вроде такого: 39 AA E3 B3. Это UID (идентификатор) RFID-карты.
Библиотеки в коде прописаны следующим образом:
Технология RFID для закрытия/открытия замка Показать / Скрыть текст#include <SPI.h>
#include <MFRC522.h>
#include <Servo.h>
#include <LiquidCrystal.h>
Ниже определение выводов для модуля RFID , выводов мини-сервопривода и выводов ЖК-дисплея.
Технология RFID для закрытия/открытия замка Показать / Скрыть текст#define SS_PIN 10
#define RST_PIN 9

#define SERVO_PIN 8
Servo myservo;

#define ACCESS_DELAY 2000
#define DENIED_DELAY 1000
MFRC522 mfrc522(SS_PIN, RST_PIN);// Create MFRC522 instance.
LiquidCrystal lcd(6,7,5,4,3,2);
Следующий фрагмент кода инициирует последовательную связь, шину SPI и MFRC522 ( модуль RFID ).
ЖК-дисплей включается, а затем начинает отображаться сетка (16,2), отображая надпись “Scan RFID Card” («Сканировать карту RFID»).
Мини-сервопривод перемещается на 75 градусов, в то время как последовательный монитор отображает
Технология RFID для закрытия/открытия замка Показать / Скрыть текст"Put your card to the reader." («Вставьте карту в считывающее устройство»).
void loop()
{
// Look for new cards
if ( ! mfrc522.PICC_IsNewCardPresent())
{
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial())
{
return;
}
//Show UID on serial monitor
lcd.clear();
lcd.begin(16, 2);
lcd.print("UID tag :");
String content= "";
byte letter;
for (byte i = 0; i < mfrc522.uid.size; i++) Технология RFID для закрытия/открытия замка Показать / Скрыть текст {
lcd.setCursor(0,1);
lcd.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
lcd.print(mfrc522.uid.uidByte[i], HEX);
content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));
content.concat(String(mfrc522.uid.uidByte[i], HEX));
}
lcd.clear();
lcd.begin(16,2);
lcd.print("Message : ");
content.toUpperCase();Технология RFID для закрытия/открытия замка Показать / Скрыть текстif (content.substring(1) == "39 AA E3 B3") //change here the UID of the card
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Access Granted");
myservo.write( 158 ); // the degree the motor will be at
delay(7500); // how long the motor will stay at 158
myservo.write( 75 ); // goes back to 75 degrees
lcd.clear();
lcd.print("Scan RFID Card"); // says Scan RFID Card again
setup();
Следующие три фрагмента считывают идентификатор RFID – карты, и если значение верно, то доступ разрешается и сервопривод перемещается на значение 158. В таком положении он находится 7 с половиной секунд, а затем возвращается на 65 градусов и на дисплеи снова отображается «Сканировать карту RFID».
Технология RFID для закрытия/открытия замка Показать / Скрыть текст }

else {
lcd.clear();
lcd.setCursor(1,0);
lcd.print(" Access Denied");
delay(4000); // displays Access Denied for about 4 seconds
lcd.clear();
delay(DENIED_DELAY);
lcd.print("Scan RFID Card");
setup();

}
}
Последняя часть кода связана запретом доступа. Например, RFID- карта сканируется, но она не является идентифицированной. В этом случае, в течение примерно 4 секунд, отображается сообщение “Access Denied” («Доступ запрещен»), затем ЖК-дисплей очищается, появляется надпись «Сканировать RFID-карту», и весь процесс перезапускается.

Таким образом, этот код сканирует карту при отображении «Сканировать карту RFID». При сканировании неправильной карты, в течение примерно 4 секунд, отображаются слова «Доступ запрещен», и сервопривод не приходит в движение. Если карта идентифицирована, сервопривод поворачивается на определенное количество градусов, чтобы разблокировать замок примерно на 7 секунд. При этом на экране будет отображаться надпись «Доступ разрешен». Затем замок снова заблокируется.
Шаг четвертый: прототип
Для демонстрации работы запорного устройства мастер собирает его на макете двери.
На лицевой стороне устанавливаются дисплей и считыватель, с обратной стороны вся остальная электроника.
Технология RFID для закрытия/открытия замкаТехнология RFID для закрытия/открытия замкаТехнология RFID для закрытия/открытия замкаТехнология RFID для закрытия/открытия замкаТехнология RFID для закрытия/открытия замкаПосле сборки мастер проверил работу устройства. Все работает и можно адаптировать проект для конкретных целей.

SitesReady

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

Follow us

Don't be shy, get in touch. We love meeting interesting people and making new friends.