Membuka Pintu Otomatis Memakai Tag Rfid

Jenis-jenis Tag RFID
Setiap kartu RFID memiliki Nomor serial masing-masing, artinya nomor seri pada setiap tag RFID berbeda-beda satu dengan yang lainnya, nomor tersebut tidak sanggup kita ubah alasannya yaitu sudah default dari pabrikannya.
Artikel ini akan membahas perihal bagaimana cara membaca nomor serial pada tag RFID, dimana nantinya kita sanggup memanfaatkan nomor seri ini untuk membuka pintu secara otomatis atau umumnya sanggup melaksanakan suatu agresi tertentu. Dalam hal ini, kita mengambil pola cara kerja palang pintu di gerbang tol, dimana saat pengguna menempelkan kartu e-toll nya maka pintu akan terbuka secara otomatis. Disini kita akan memakai motor servo sebagai penggagas pintu-nya, dengan cara kerja yaitu jikalau nomor seri pada kartu RFID sesuai dengan nomor yang ditentukan (misal XYZ), maka pintu akan terbuka, jikalau tidak maka pintu akan tetap tertutup. Pseudocode nya yaitu sebagai berikut:

if (seri == “xyz”) { buka_pintu = True } else { buka_pintu = False }

Untuk membaca nomor seri pada tag RFID kita membutuhkan sebuah RFID reader, RFID reader yang dipakai yaitu Mifare RC522, klarifikasi mengenai Mifare RC522 sanggup dilihat pada Artikel sebelumnya.

Rangkaian Perangkat keras
Komunikasi RFID reader MFRC522 dengan Arduino dilakukan melalui pin SPI (Serial peripheral Interface), A serial peripheral interface (SPI compatible) is supported to enable high-speed communication to the host. The interface can handle data speeds up to 10 Mbit/s. dalam komunikasi SPI dikenal istilah Master dan Slave, dalam hal ini Arduino berfungsi sebagai master dan MFRC522 bertindak sebagai slave.
hati-hati dalam derma tegangan pada MFRC522, alasannya yaitu ia hanya membutuhkan supply tegangan sebesar 3.3V,
Perancangan Arduino Mifare dan Servo sanggup dilihat pada Gambar berikut:
Skema rangkaian


Rangkaian yang dibuat
Pemrogaraman
Untuk memakai Mifare kita membutuhkan library tambahan, library tersebut sanggup didownload disini. Selanjutnya, kita akan menciptakan sebuah jadwal untuk menggerakkan motor servo saat RFID reader mendeteksi nomor seri pada tag RFID.
Untuk programnya sanggup dilihat dibawah ini.

Pembahasan dan Pengujian
pada jadwal ini, dibentuk sebuah variable seri untuk menampung data nomor serial tag, ini dimaksudkan untuk mempermudah dalam menciptakan percabangan if. Pengisian nilai variable seri dilakukan dengan perintah seri += mfrc522.uid.uidByte[i]; yang berarti memasukkan nilai mfrc522.uid.uidByte[i] kedalam variable seri.
Perintah mfrc522.PICC_HaltA(); dan mfrc522.PCD_StopCrypto1(); dipakai untuk menghentikan proses pembacaan, saya telah mencoba menghapus bab jadwal ini, dan karenanya saat kartu terus ditempelkan, maka pembacaan-pun terus dilakukan tanpa henti hingga kartu dijauhkan kembali.
Hasil dari percobaan diatas adalah:
  1. Setelah jadwal diupload kemudian dijalankan, servo berputar sebanyak 90 derajat kemudian kembali ke posisi 0 derrajat. Hal ini dipakai untuk melaksanakan kalibrasi servo.
  2. ketika tag RFID dengan nomor seri 16012996126 ditempelkan, servo berputar sebanyak 90 derajat, kemudian membisu selama 5 detik, sehabis itu servo kembali ke posisi awal (0 derajat).  Servo juga bekerja saat tag dengan nomor 117253254164 ditempelkan. Serial monitor juga menampilkan gosip "Terima kasih, silahkan masuk"
  3. ketika tag RFID dengan nomor selain yang sudah disebutkan di nomor 2 ditempelkan, servo tidak bekerja, kemudian serial monitor menampilkan gosip “Mohon maaf, kartu anda tidak terdaftar”