Saklar On Off Menggunakan Kartu RFID

Pada kesempatan kali ini saya akan berbagi cara membuat rangkaian saklar on off menggunakan RFID. Hasilnya bisa kalian lihat di bawah ini

RFID adalah singkatan dari Radio Frequency Identification. Proses identifikasi pada RFID dapat terjadi dengan menggunakan gelombang elektromagnetik. Oleh sebab itu proses identifikasi RFID membutuhkan dua perangkat yaitu tag dan reader agar dapat berfungsi dengan baik.

RFID tag adalah alat yang menempel pada benda yang akan diidentifikasi oleh RFID reader. RFID tag terdiri dari 2 jenis yaitu aktif dan pasif. Tag pasif dapat digunakan tanpa harus memakai baterai sedangkan tag aktif memerlukan baterai untuk bisa dioperasikan. RFID tag berisi suatu tag unik yang berbeda satu dengan yang lainnya. Selain itu, informasi yang tersimpan pada suatu benda atau objek yang terhubung pada tag hanya terdapat pada sistem atau database yang dihubungkan ke RFID reader.

Oke kalau begitu kita langsung saja ya ke tutorialnya. Buat kalian yang belum tahu bagaimana cara Mengetahui ID dari Kartu atau Tag bisa langsung ke Artikel Di bawah ini.

Cara Mengetahui ID Pada Kartu dan Tag RFID

Setelah mengetahui ID pada Kartu dan Tag RFID Kita Lanjut ke cara merangkai komponen, Silahkan lihat rangkaian di bawah untuk menghubungkanya…

Langkah Pertama : Hubungkan Arduino dengan RFID

Rangkaian Arduino dengan RFID 

ikuti seperti rangkaian di atas untuk menghubungkan RFID dengan board Arduino dan untuk pin IRQ dikosongkan saja,selanjutnya seteleah merangkai seperti di atas kita lanjut ke tahap 2 yaitu merangkai Relay

Langkah Kedua: Hubungkan Arduino dengan Relay

Rangkaian Relay dengan Arduino

Setelah langkah pertama dan langkah kedua selesai kalian buka aplikasi Arduino IDE di komputer  dan masukan coding seperti dibawah.

Ingat sebelum memasukan coding dibawah incude dulu semua library yang dibutuhkan.

Library RFID
GDrive | Mediafire

Langkah Ketiga: Masukan Coding ke Arduino IDE

RFID ON dan OFF Menggunakan 2 ID yang berbeda

Untuk coding kali ini 1 Kartu / Tag RFID saya gunakan untuk menyalakan Relay atau Lampu sedangkan 1 Kartu / Tag lainnya saya gunakan untuk mematikan Relay atau Lampunya, Rangkaianya sama seperti di atas namun saya hanya menambahkan LED Merah dan Hijau Sebagai Penanda saja . Codingnya Seperti di bawah ini.
#include <MFRC522.h>
#include <SPI.h>

#define SS_PIN 10 //pin RFID yang bisa di ubah
#define RST_PIN 9 //pin RFID yang bisa di ubah


#define RELAY_1  8   // pin yang digunakan yaitu pin 8

MFRC522 rfid(SS_PIN,RST_PIN);


const int Merah = 3; //pin Led yang digunakan
const int hijau = 2; //pin Led yang digunakan

void setup(){

    Serial.begin(9600);
    SPI.begin();
    rfid.PCD_Init();

    pinMode(Merah, OUTPUT);
    pinMode(hijau, OUTPUT);
    pinMode(RELAY_1, OUTPUT);

    digitalWrite(RELAY_1, LOW);
    digitalWrite(Merah, LOW);
    digitalWrite(hijau, LOW);
   
}

void loop(){
  
// Look for new cards
  if ( ! rfid.PICC_IsNewCardPresent()) 
  {
    return;
  }
  // Select one of the cards
  if ( ! rfid.PICC_ReadCardSerial()) 
  {
    return;
  }
  //Show UID on serial monitor
  Serial.print("UID tag :");
  String content= "";
  String ID= "";
  byte letter;
  for (byte i = 0; i < rfid.uid.size; i++) 
  {
     Serial.print(rfid.uid.uidByte[i] < 0x10 ? " 0" : " ");
     Serial.print(rfid.uid.uidByte[i], HEX);
     content.concat(String(rfid.uid.uidByte[i] < 0x10 ? " 0" : " "));
     content.concat(String(rfid.uid.uidByte[i], HEX));
  }
  Serial.println();
  Serial.print("Message : ");
  content.toUpperCase();
  if (content.substring(1) == "80 20 64 A3") //ganti ID kartu sobat disini untuk kartu yang pertama
  {
    Serial.println("Lampu Nyala");
          digitalWrite(hijau, HIGH);
          digitalWrite(Merah, LOW);
          digitalWrite(RELAY_1, HIGH);
 delay (5000);
  }else   {
    if (content.substring(1) == "E0 F9 DA A4 ") //ganti ID kartu sobat disini untuk kartu yang kedua
    Serial.println("Lampu Mati"); 
           digitalWrite(Merah, HIGH);
           digitalWrite(hijau, LOW);
          digitalWrite(RELAY_1, LOW);
          delay(5000);
  }
}

RFID On saat Kartu Atau Tag Berada di Tempat (Seperti di Hotel – Hotel)

Sedangkan untuk coding di bawah ini penerapanya seperti di Hotel – hotel yang mana saat kartu diletakan di RFID Reader maka otomatis menyalakan lampu atau rangkaian lainnya namun kelemahan coding ini adalah apapun bentuk kartu atau tag RFID yang memancarkan gelombang elektromagnetik maka akan otomatis terbaca dan menyalakan lampu.

#include <SPI.h>
#include <MFRC522.h>
#define RELAY 8
#define RST_PIN         9           
  #define SS_PIN          10          
  
  MFRC522 mfrc522(SS_PIN, RST_PIN);   // Create MFRC522 instance
  
  //*****************************************************************************************//
  void setup() {
    pinMode(RELAY,OUTPUT);
    digitalWrite(RELAY,LOW);
    Serial.begin(9600);                                           // Initialize serial communications with the PC
    SPI.begin();                                                  // Init SPI bus
    mfrc522.PCD_Init();                                              // Init MFRC522 card
  }
  uint8_t control = 0x00;
  
  //*****************************************************************************************//
  
  
  
  void loop() {
  
    // Look for new cards
    if ( !mfrc522.PICC_IsNewCardPresent()) {
      return;
    }
    if ( !mfrc522.PICC_ReadCardSerial()) {
      return;
    }

    bool result = true;
    uint8_t buf_len = 4;
  
    Serial.println("NewCard ");
    
    while (true) {
      control = 0;
      for (int i = 0; i < 3; i++) {
        if (!mfrc522.PICC_IsNewCardPresent()) {
          if (mfrc522.PICC_ReadCardSerial()) {
            //Serial.print('a');
            control |= 0x16;
          }
          if (mfrc522.PICC_ReadCardSerial()) {
            //Serial.print('b');
            control |= 0x16;
          }
          //Serial.print('c');
          control += 0x1;
        }
        //Serial.print('d');
        control += 0x4;
      }
  
      Serial.println(control);
      if (control == 13 || control == 14) {
        digitalWrite(RELAY,HIGH);
        //saat kartu masih terbaca
      } else {
        digitalWrite(RELAY,LOW);
        break;
      }
    }
    Serial.println("CardRemoved");
    delay(500); //rubah delay jika ingin pembacaan lebih cepat
  
    mfrc522.PICC_HaltA();
    mfrc522.PCD_StopCrypto1();
  }
  //*****************************************************************************************//a   `

RFID ON dan OFF Menggunakan 1 ID yang Sama

Untuk coding menyalakan lampu menggunakan tag atau kartu RFID yang sama ada di bawah ini namun kalian harus mendownloadnya ya.

CODING ARDUINO RFID ONE CARD / TAG ONLY
GDrive | Mediafire

Rangkaian di atas sudah saya coba dan praktekan serta coding tersebut sudah work 100% asalkan rangkaian benar seperti di atas. hasilnnya bisa diihat seperti video di atas dan jika berkenaan di hati mohon di Share yaa dengan klik tombol share post di bawah. Terimakasih selamat mencoba ☺

Bagikan Postingan ini :

Putu Artha

Seorang Laki- Laki yang senang berbagi ilmu seputar Informasi Teknologi dan Elektronika Serta pengalaman yang pernah saya lakukan

This Post Has 7 Comments

  1. Mr Art

    oke sob smoga membantu ya.

  2. Noshi

    Bisa 2 kartu kg sob…atau lebih

  3. Mr Arduino

    bisa banget bos tinggal tambah or (||) di bagian kode RFID nya

  4. fikri

    maaf gan, untuk file yang saya download, harus masukin password untuk aksesnya

  5. Fauzi

    Saya mau menggunakan Raspberry pi pico dan RFID-RC522 untuk RFID On saat Kartu Atau Tag Berada di Tempat,untuk codingan nya gimana ya bang? saya pakai python tapi masih newbie..

Leave a Reply