В этой стате нам понадобится:
Arduino uno: http://ali.ski/gC_mOa
Servo SG90: http://ali.ski/0pzHo
Модуль RFID RC522: http://ali.ski/C1M6u
Макетную плату: http://ali.ski/rq8wz8
Контактные провода: http://ali.ski/Exjr3
Прежде чем приступить к материалу, я Вас попрошу, если нравится то, что я делаю и хотите следить за моей деятельностью, то рекомендую подписаться на мой телеграмм канал: https://t.me/ypavla
Там я публикую новости о вышедших видео, статьях и разные устройства для умного дома и не только показываю.
Спасибо за внимание, теперь продолжим.
В данном примере реализован контроль доступа с помощью модуля считывания карт RFID RC522 сервомашинки которая будет отодвигать засов.
вот эта строчка кода : “if (uidDec == 3763966293)”
В ней нужно написать id карточки которую вы бы хотели чтоб принимало для открытия засова.
Необходимо скопировать программный код приведенный ниже и вставить его в программу Arduino IDE и загрузить этот программный код в саму плату Arduino.
#include <Servo.h>
#include <SPI.h>
#include <MFRC522.h> // библиотека "RFID".
#define SS_PIN 10
#define RST_PIN 9
MFRC522 mfrc522(SS_PIN, RST_PIN);
unsigned long uidDec, uidDecTemp; // для храниения номера метки в десятичном формате
Servo servo;
void setup() {
Serial.begin(9600);
Serial.println("Waiting for card...");
SPI.begin(); // инициализация SPI / Init SPI bus.
mfrc522.PCD_Init(); // инициализация MFRC522 / Init MFRC522 card.
servo.attach(6);
servo.write(0); // устанавливаем серву в закрытое сосотояние
}
void loop() {
// Поиск новой метки
if ( ! mfrc522.PICC_IsNewCardPresent()) {
return;
}
// Выбор метки
if ( ! mfrc522.PICC_ReadCardSerial()) {
return;
}
uidDec = 0;
// Выдача серийного номера метки.
for (byte i = 0; i < mfrc522.uid.size; i++)
{
uidDecTemp = mfrc522.uid.uidByte[i];
uidDec = uidDec * 256 + uidDecTemp;
}
Serial.println("Card UID: ");
Serial.println(uidDec); // Выводим UID метки в консоль.
if (uidDec == 3763966293) // Сравниваем Uid метки, если он равен заданому то серва открывает.
{
tone(5, 200, 500); // Делаем звуковой сигнал, Открытие
servo.write(90); // Поворациваем серву на угол 90 градусов(Отпираем какой либо механизм: задвижку, поворациваем ключ и т.д.)
delay(3000); // пауза 3 сек и механизм запирается.
tone(5, 500, 500); // Делаем звуковой сигнал, Закрытие
}
servo.write(0); // устанавливаем серву в закрытое сосотояние
}
Скетч: https://yadi.sk/d/GvH602emsFcFC
Демонстрация работы данной программы можно увидеть в видео приведенном в конце статьи.
