راه اندازی RFID با آردینو
این مقاله شروع پروژه های RFID میباشد و مقدمه ای برای شروع مقاله های RFID و ESP32 میباشد که بسیار متنوع و پر کاربرد است.
در این مقاله قصد داریم راه اندازی RFID با آردوینو نانو را آموزش دهیم.
RFID مخفف شناسایی فرکانس رادیویی است، این یک فنآوری بسیار ساده و ارزان است که میتواند برای ایجاد کاربردهایی مانند قفل بر پایه RFID، سیستم مراقبت بر پایه RFID مورد استفاده قرار گیرد. در آینده هر کدام از این مقالات به صورت مستقل برای شما عزیزان در این سایت قرار میگیرد که در قسمت جست و جوی سایت میتوانید هر کدام از آنها را پیدا کنید.
اجزا مورد نیاز برای راه اندازی RFID با آردوینو
• آردوینو نانو
• کارت های RFID
• ماژول RFID RC522
• شیلد آردوینو نانو
ماژول RFIDRC522
تصویر بالا یک ماژول RC522 RFID Reader را در کنار کارت RFID نشان میدهد. تکنولوژی RFID چیز جدیدی نیست، اما بخشی از تکنولوژی است که در آن دادههای دیجیتال در برچسبهای RFID کد گذاری میشوند و میتوانند توسط یک RFID reader با استفاده از امواج رادیویی رمزگشایی شوند.RFID مشابه بارکد گذاری است که در آن دادههای یک برچسب توسط یک دستگاه رمزگشایی میشود. تکنولوژی RFID در کاربردهای مختلف مانند سیستم امنیتی، سیستم حضور کارکنان، قفل در RFID، دستگاه خودکار رایگیری بر پایه RFID، سیستم جمعآوری عوارض و غیره استفاده میشود.
اتصالات RFID و Arduino Nano
قبل از راه اندازی RFID با آردوینو مانند تمام پروژه های دیگر دانستن چگونگی اتصالات ماژول با آردوینو یکی از مهمترین قسمت های انجام کار است.
Pin RFID | Wiring to Arduino Nano |
SDA | Digital 10 |
SCK | Digital 13 |
MOSI | Digital 11 |
MISO | Digital 12 |
IRQ | unconnected |
GND | GND |
RST | Digital 9 |
3.3V | 3.3V |
راه اندازی RFID با آردوینو
برای راحت تر شدن کدنویسی مانند پروژه های دیگر از کتابخانه های آماده استفاده میکنیم.بعد از اتصال RFID به شیلدآردوینو نانو وارد محیط نرم افزار Ardiono میشویم سپس کتابخانه ی rfid-master را در قسمت sketch<include library<add Zip Library به کتابخانه های خود اضافه میکنیم و کد زیر را در آردوینو Upload میکنیم. سپس یکی از کارت ها را روی ماژول rfid گذاشته و کدی را که در قسمت serial monitor مشاهده میکنیم به قسمت مشخص شده در کدنویسی اضافه میکنیم یعنی کد قبلی را پاک و کد مربوط به کارت خودمان را در آن وارد میکنیم سپس یکبار دیگر کد خود را آپلود میکنیم. برای یادگیری بیشتر کدنویسی میتوانید در دوره های آموزش رباتیک ما شرکت کنید.
میتوانید برای درک بهتر مقاله ی راه اندازی RFID با آردوینو ویدیوی زیر را مشاهده کنید:
کد نهایی برای راه اندازی RFID با آردوینو :
#include <SPI.h> #include <MFRC522.h>
//کتابخانه ها را فرامیخوانیم
#define SS_PIN 10 #define RST_PIN 9
//پین های 10 و 9 را مشخص میکنیم
MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance. //موارد mfrc22 را مشخص میکنیم void setup()
{ Serial.begin(9600); // Initiate a serial communication
SPI.begin(); // Initiate SPI bus
//تابع SPI را آغاز میکنیم mfrc522.PCD_Init(); // Initiate MFRC522
//mfrc522.pcdرا intialize میکنیم
Serial.println("Approximate your card to the reader..."); Serial.println();
//میخواهیم که با دستور println در سریال مانیتور بخواهیم عبارت کارت خود رابر روی ماژول قرار دهید را چاپ کند. } 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 Serial.print("UID tag :"); String content= ""; byte letter; for (byte i = 0; i < mfrc522.uid.size; i++) { Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "); Serial.print(mfrc522.uid.uidByte[i], HEX); content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ")); content.concat(String(mfrc522.uid.uidByte[i], HEX)); } Serial.println(); Serial.print("Message : "); content.toUpperCase(); if (content.substring(1) == "F3 A1 8F A9") //change here the UID of the card/cards that you want to give access //در قسمت بالا کد F3 A1 8F A9 را پاک میکنیم و به جای آن کد خود را اضافه میکنیم { Serial.println("Authorized access"); Serial.println(); delay(3000); } else { Serial.println(" Access denied"); delay(3000); } }