پروژه و ساخت

ساخت قفل درب هوشمند با RFID

مقدمه

ساخت قفل درب هوشمند با استفاده از RFID یک پروژه‌ی جذاب است که امنیت و کنترل دسترسی به محیط‌ها را افزایش می‌دهد. این سیستم به کاربر اجازه می‌دهد درب را تنها با کارت‌های RFID خاص باز کند. این پروژه برای خانه، محل کار، و حتی فضای شخصی ایده‌آل است و اجرای آن ساده و کم‌هزینه است.

قطعات مورد نیاز برای انجام پروژه

  • برد آردوینو (ترجیحاً مدل Uno یا Nano)
  • ماژول RFID (مثلاً ماژول RC522)
  • رله (برای کنترل قفل الکترونیکی)
  • قفل الکترونیکی (قفل برقی یا مگنتی یا کابینتی)
  • کارت‌های RFID یا تگ‌های RFID
  • سیم‌ جامپر (نر به نر در هر اندازه ای)
  • منبع تغذیه (برای قفل الکترونیکی و برای برد آردوینو)
  • برد بورد (ترجیحا برند با کیفیت GL)

ماژول RFID خوان 125Khz به همراه کابل USB

موجود

۲,۶۰۰,۰۰۰ ریال
شناسه کالا: 60209125
وزن 25 گرم
طول (میلی متر)

55

عرض (میلی متر)

35

ارتفاع (میلی متر)

12

ماژول رله دو کانال 12 ولت

موجود

۱,۰۰۰,۰۰۰ ریال
شناسه کالا: 60750100
وزن 40 گرم
طول (میلی متر)

60

عرض (میلی متر)

40

ارتفاع (میلی متر)

10

ماژول تایمر رله 12 ولت IC NE555 قابل تنظیم بین 0 تا 10 ثانیه

موجود

۷۰۰,۰۰۰ ریال
شناسه کالا: 60801050
وزن 50 گرم
طول (میلی متر)

70

عرض (میلی متر)

50

ارتفاع (میلی متر)

10

تگ 13.56MHZ RFID کارتی با کیفیت

موجود

۱۲۰,۰۰۰ ریال
شناسه کالا: 60201253
وزن 5 گرم
طول (میلی متر)

85

عرض (میلی متر)

54

ارتفاع (میلی متر)

1

تگ 125khz RFID صورتی رنگ

موجود

۷۰,۰۰۰ ریال
شناسه کالا: 60201257
وزن 5 گرم
طول (میلی متر)

85

عرض (میلی متر)

54

ارتفاع (میلی متر)

1

تگ RFID 125KHZ قرمز رنگ

موجود

۶۰,۰۰۰ ریال
شناسه کالا: 60201254
وزن 5 گرم
طول (میلی متر)

85

عرض (میلی متر)

54

ارتفاع (میلی متر)

1

تگ RFID 125KHZ آبی رنگ

موجود

۶۰,۰۰۰ ریال
شناسه کالا: 60201255
وزن 5 گرم
طول (میلی متر)

85

عرض (میلی متر)

54

ارتفاع (میلی متر)

1

تگ RFID 125KHZ سیاه رنگ

موجود

۶۰,۰۰۰ ریال
شناسه کالا: 60201259
وزن 5 گرم
طول (میلی متر)

85

عرض (میلی متر)

54

ارتفاع (میلی متر)

1

ماژول RFID مدل RC522 با قابلیت خواندن و نوشتن فرکانس 13.56Mhz

ناموجود

۰ ریال
شناسه کالا: 60205220
وزن 25 گرم
طول (میلی متر)

60

عرض (میلی متر)

40

ارتفاع (میلی متر)

10

برد آردوینو Arduino UNO CH340

ناموجود

۰ ریال
شناسه کالا: 50350001
وزن 25 گرم
طول (میلی متر)

68.6

عرض (میلی متر)

53.4

ارتفاع (میلی متر)

13

ماژول رله تک کانال 12 ولت ساده

ناموجود

۰ ریال
شناسه کالا: 60750099
وزن 30 گرم
طول (میلی متر)

60

عرض (میلی متر)

40

ارتفاع (میلی متر)

10

برد آردوینو UNO R3 اورجینال با پردازنده ATmega328P

ناموجود

۰ ریال
شناسه کالا: 50350002
وزن 25 گرم
طول (میلی متر)

68.6

عرض (میلی متر)

53.4

ارتفاع (میلی متر)

13

تگ 125khz RFID سبز رنگ

ناموجود

۰ ریال
شناسه کالا: 60201256
وزن 5 گرم
طول (میلی متر)

85

عرض (میلی متر)

54

ارتفاع (میلی متر)

1

مراحل ساخت پروژه

1. نصب ماژول RFID

  • ماژول RFID را به برد آردوینو متصل کنید. معمولاً پایه‌های SDA، SCK، MOSI، MISO و IRQ به پین‌های دیجیتال آردوینو وصل می‌شوند. تغذیه و اتصال زمین نیز به 5V و GND متصل می‌شوند.

2. اتصال رله و قفل الکترونیکی

  • خروجی رله را به قفل الکترونیکی متصل کنید تا درب به‌وسیله‌ی رله باز و بسته شود. پایه‌های کنترل رله به یکی از پین‌های دیجیتال آردوینو متصل می‌شوند.

3. برنامه‌ریزی آردوینو

  • کدنویسی را با استفاده از کتابخانه‌های RFID و Servo انجام دهید. کد باید به صورتی باشد که با نزدیک شدن کارت مجاز به ماژول RFID، سیگنالی به رله ارسال شود و قفل برای چند ثانیه باز شود.
  • در کد، اطلاعات مربوط به کارت‌های مجاز را ذخیره کنید تا آردوینو بتواند کارت‌های معتبر و غیرمعتبر را شناسایی کند.

4. تست سیستم

  • برنامه را به برد آردوینو ارسال کنید و کارت RFID را نزدیک ماژول قرار دهید. اگر کارت معتبر باشد، رله فعال شده و قفل باز می‌شود. در غیر این صورت، سیگنالی صادر نمی‌شود و درب بسته می‌ماند.

نکات مهم

  • امنیت پروژه: کارت‌های RFID می‌توانند کپی شوند، بنابراین از کارت‌های با امنیت بالا یا رمزگذاری شده استفاده کنید.
  • منبع تغذیه پایدار: حتماً از منبع تغذیه مناسب برای قفل الکترونیکی استفاده کنید، زیرا قفل‌ها معمولاً جریان زیادی نیاز دارند.
  • جایگزینی با NFC: در صورت تمایل، می‌توانید ماژول NFC را جایگزین RFID کنید تا امنیت بیشتری برای سیستم فراهم شود.

کاربردها و مزایا

  • کنترل ورود و خروج: این سیستم می‌تواند برای کنترل دسترسی به اتاق‌های خاص، دفاتر و حتی خانه‌ها به کار رود.
  • آسانی استفاده: استفاده از کارت RFID برای باز کردن قفل، نیاز به کلیدهای فیزیکی را کاهش می‌دهد و کنترل ورود و خروج را آسان‌تر می‌کند.
  • صرفه‌جویی در هزینه: این پروژه نسبت به سیستم‌های تجاری کنترل دسترسی بسیار ارزان‌تر است و می‌تواند توسط کاربران خانگی ساخته شود.

با انجام این پروژه، نه تنها امنیت محیط را افزایش می‌دهید، بلکه با دنیای الکترونیک و برنامه‌نویسی آردوینو نیز بیشتر آشنا خواهید شد. برای تهیه قطعات و ماژول‌های مورد نیاز می‌توانید به فروشگاه گیگا الکترونیک مراجعه کنید.

در اینجا کد برنامه برای ساخت قفل درب هوشمند با استفاده از RFID به کمک آردوینو و ماژول RC522 آمده است. این کد برای خواندن کارت RFID و کنترل قفل الکترونیکی استفاده می‌شود.

کد برنامه آردوینو برای قفل درب هوشمند با RFID

  1. کتابخانه‌ها و اتصال به ماژول RFID:

ابتدا باید کتابخانه‌های مورد نیاز برای ارتباط با ماژول RFID را در کد خود وارد کنید. این کتابخانه‌ها را می‌توانید از محیط Arduino IDE دانلود کنید (بروید به Sketch > Include Library > Manage Libraries... و جستجو کنید).


#include SPI.h
#include MFRC522.h

#define SS_PIN 10  // Pin for RFID reader
#define RST_PIN 9  // Reset pin for RFID reader

MFRC522 mfrc522(SS_PIN, RST_PIN); // Initialize MFRC522 instance

// Pin for controlling the relay
#define RELAY_PIN 8  

// Define valid RFID card IDs
String validUID = "A1B2C3D4"; // Example valid UID (should match your RFID card)

void setup() {
  // Start communication with serial monitor
  Serial.begin(9600);
  
  // Initialize the RFID reader
  SPI.begin(); // Start SPI communication
  mfrc522.PCD_Init(); // Initialize MFRC522
  pinMode(RELAY_PIN, OUTPUT); // Set the relay pin as output
  digitalWrite(RELAY_PIN, LOW); // Ensure the relay is initially off

  Serial.println("Scan your RFID card...");
}

void loop() {
  // Check if a card is detected
  if (mfrc522.PICC_IsNewCardPresent()) {
    // Read the card UID
    if (mfrc522.PICC_ReadCardSerial()) {
      String cardUID = ""; // String to store the card UID

      // Retrieve UID and convert it to a string
      for (byte i = 0; i < mfrc522.uid.size; i++) {
        cardUID += String(mfrc522.uid.uidByte[i], HEX); // Convert to HEX
      }

      cardUID.toUpperCase(); // Convert to uppercase for comparison
      Serial.println("Card UID: " + cardUID); // Print card UID to serial monitor

      // Check if the card UID matches the valid UID
      if (cardUID == validUID) {
        Serial.println("Access Granted!");
        digitalWrite(RELAY_PIN, HIGH); // Unlock the door (turn on the relay)
        delay(5000); // Keep the door unlocked for 5 seconds
        digitalWrite(RELAY_PIN, LOW); // Lock the door (turn off the relay)
      } else {
        Serial.println("Access Denied!");
      }
      
      mfrc522.PICC_HaltA(); // Halt the current card
      mfrc522.PCD_StopCrypto1(); // Stop encryption
    }
  }
}

    

توضیحات کد:

  1. کتابخانه‌ها:

    • SPI.h و MFRC522.h برای ارتباط با ماژول RC522 RFID استفاده می‌شوند. این کتابخانه‌ها به آردوینو اجازه می‌دهند تا با ماژول RFID ارتباط برقرار کند.
  2. تعریف پین‌ها:

    • SS_PIN و RST_PIN پین‌های متصل به ماژول RFID هستند.
    • RELAY_PIN پینی است که به رله متصل است و برای باز و بسته کردن قفل استفاده می‌شود.
  3. آغاز ارتباط:

    • SPI.begin() و mfrc522.PCD_Init() ارتباط با ماژول RFID را آغاز می‌کنند.
    • pinMode(RELAY_PIN, OUTPUT) پین رله را به عنوان خروجی تنظیم می‌کند.
  4. خواندن UID کارت:

    • با استفاده از mfrc522.PICC_IsNewCardPresent() و mfrc522.PICC_ReadCardSerial() اطلاعات کارت خوانده می‌شود.
    • UID کارت RFID به صورت رشته‌ی String ذخیره شده و برای مقایسه با UID معتبر استفاده می‌شود.
  5. مقایسه UID:

    • اگر UID کارت با UID معتبر مطابقت داشته باشد، درب باز می‌شود و رله به مدت 5 ثانیه فعال می‌ماند (در این مدت درب باز می‌شود).
    • در صورتی که UID معتبر نباشد، پیامی مبنی بر "Access Denied" نمایش داده می‌شود.

نکات تکمیلی:

  • تنظیم کارت‌های معتبر: برای استفاده از این سیستم، باید UID کارت مورد نظر خود را وارد کنید. به جای validUID = "A1B2C3D4"، باید UID کارت خود را وارد کنید که از طریق Serial Monitor قابل مشاهده است.

  • تنظیمات رله: برای اتصال به رله، اطمینان حاصل کنید که رله به درستی به قفل الکترونیکی متصل شده باشد. همچنین، از یک منبع تغذیه مناسب برای تامین انرژی قفل الکترونیکی استفاده کنید.

  • تست و رفع اشکال: پس از بارگذاری کد، می‌توانید از Serial Monitor برای مشاهده اطلاعات کارت‌ها و مشکلات احتمالی استفاده کنید.

این پروژه یک سیستم امنیتی ساده و کارآمد است که به راحتی می‌توانید آن را برای کنترل دسترسی به درب‌ها یا مکان‌های مختلف استفاده کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *