Daftar Isi:

Tutorial Kunci RFID Arduino: 6 Langkah (dengan Gambar)
Tutorial Kunci RFID Arduino: 6 Langkah (dengan Gambar)

Video: Tutorial Kunci RFID Arduino: 6 Langkah (dengan Gambar)

Video: Tutorial Kunci RFID Arduino: 6 Langkah (dengan Gambar)
Video: Tutorial Membuat Kunci Pintu Berbasis Arduino, RFID, Doorlock dan E-KTP 2024, November
Anonim
Image
Image
Tutorial Kunci RFID Arduino
Tutorial Kunci RFID Arduino
Tutorial Kunci RFID Arduino
Tutorial Kunci RFID Arduino

Teman-teman yang terkasih, selamat datang di Instructable lainnya. Ini Nick dari educ8s.tv dan hari ini kita akan belajar bagaimana menggunakan Pembaca RFID ini dengan Arduino untuk membangun sistem kunci sederhana.

Untuk pertama kalinya, kita akan menggunakan tag RFID dengan Arduino. Saya telah membangun proyek sederhana yang membaca ID Unik (UID) dari setiap tag RFID yang kami tempatkan di dekat pembaca dan menampilkannya di layar OLED ini. Jika UID dari tag sama dengan nilai yang telah ditentukan yang disimpan dalam memori Arduino, maka di layar kita akan melihat pesan “Tidak Terkunci”. Jika ID Unik kartu tidak sama dengan nilai yang telah ditentukan, pesan Buka Kunci tidak akan muncul. Keren bukan?

Ada banyak hal untuk dibahas, jadi mari kita mulai!

Langkah 1: Dapatkan Semua Bagian

Dapatkan Semua Bagian
Dapatkan Semua Bagian

Bagian-bagian yang diperlukan untuk membangun proyek ini adalah sebagai berikut:

  • Arduino Uno
  • Pembaca RFID
  • Layar OLED
  • Papan tempat memotong roti kecil
  • Beberapa kabel

Bagian Opsional:

Powerbank

Total biaya proyek ini sekitar $15.

Langkah 2: Pembaca RFID RC522

Pembaca RFID RC522
Pembaca RFID RC522
Pembaca RFID RC522
Pembaca RFID RC522
Pembaca RFID RC522
Pembaca RFID RC522
Pembaca RFID RC522
Pembaca RFID RC522

Setiap tag RFID memiliki chip kecil di dalamnya. Jika saya meletakkan senter di bawah kartu RFID ini, Anda dapat melihat chip kecil dan kumparan yang mengelilinginya. Chip ini tidak memiliki baterai untuk mendapatkan daya. Ini menerima daya dari pembaca, perangkat ini, secara nirkabel menggunakan kumparan besar ini. Pembaca dapat membaca kartu RFID seperti ini dari jarak hingga 20mm!

Chip yang sama juga ada di tag RFID gantungan kunci.

Setiap tag RFID memiliki nomor unik yang mengidentifikasinya. Itulah UID yang kami tampilkan di layar OLED. Kecuali dari UID ini, setiap tag dapat menyimpan data. Dalam jenis kartu ini kita dapat menyimpan hingga 1K data! Mengesankan bukan? Kami tidak akan menggunakan fungsi ini hari ini tetapi akan melakukannya di masa mendatang. Hari ini, yang kami minati hanyalah mengidentifikasi kartu tertentu dengan UID-nya. Biaya pembaca RFID dan kedua kartu RFID ini sekitar $4.

Langkah 3: Tampilan OLED

Image
Image
Hubungkan Semua Bagian
Hubungkan Semua Bagian

Ini adalah tampilan yang sangat bagus untuk digunakan dengan Arduino. Ini adalah layar OLED dan itu berarti konsumsi dayanya rendah. Konsumsi daya layar ini sekitar 10-20 mA dan tergantung pada berapa banyak piksel yang menyala.

Layar memiliki resolusi 128x64 piksel dan ukurannya kecil. Ada dua variasi tampilan. Salah satunya adalah monokrom, dan yang lainnya seperti yang saya gunakan dapat menampilkan dua warna, kuning dan biru. Bagian atas layar hanya dapat menampilkan warna kuning, bagian bawah hanya berwarna biru.

Layar OLED ini sangat cerah, dan memiliki dukungan perpustakaan yang hebat. Adafruit telah mengembangkan perpustakaan yang sangat bagus untuk tampilan ini. Selain itu, tampilannya menggunakan antarmuka I2C, sehingga koneksi dengan Arduino sangat mudah. Anda hanya perlu menghubungkan dua kabel kecuali Vcc dan GND. Jika Anda baru mengenal Arduino dan Anda menginginkan tampilan yang murah dan mudah digunakan untuk digunakan dengan proyek Anda, mulailah dengan tampilan. Ini adalah cara termudah untuk menambahkan tampilan ke proyek Arduino Anda. Saya telah menyiapkan tutorial terperinci tentang cara menggunakan tampilan ini yang telah saya lampirkan pada Instructable ini.

Langkah 4: Hubungkan Semua Bagian

Hubungkan Semua Bagian
Hubungkan Semua Bagian
Hubungkan Semua Bagian
Hubungkan Semua Bagian
Hubungkan Semua Bagian
Hubungkan Semua Bagian

Koneksi dengan papan Arduino Uno sangat sederhana. Pada awalnya, mari kita hubungkan kekuatan pembaca dan tampilan.

Hati-hati, pembaca RFID harus terhubung ke output 3.3V Arduino Uno atau akan hancur. Karena tampilan juga dapat bekerja pada 3.3V, kami menghubungkan Vcc dari kedua modul ke rel positif papan tempat memotong roti. Rel ini kemudian dihubungkan ke output 3.3V dari Arduino Uno. Selanjutnya, kami menghubungkan kedua GND ke rel GND papan tempat memotong roti. Kemudian kami menghubungkan rel GND dari papan tempat memotong roti ke Arduino GND.

Layar OLED - Arduino

Vcc 3.3V

GND GND

SCL Pin Analog 5

SDA Pin Analog 4

Pembaca RFID - Arduino

RST Pin Digital 9

IRQ Tidak terhubung

MISO Pin Digital 12

MOSI Pin Digital 11

SCK Pin Digital 13

SDA Pin Digital 10

Modul pembaca RFID menggunakan antarmuka SPI untuk berkomunikasi dengan Arduino. Jadi kita akan menggunakan pin hardware SPI dari Arduino UNO. Pin RST masuk ke pin digital 9. Pin IRQ tetap tidak terhubung. Pin MISO ke pin digital 12. Pin MOSI ke pin digital 11. Pin SCK ke pin digital 13 dan terakhir, pin SDA ke pin digital 10. Itu saja. Pembaca RFID terhubung. Kita sekarang harus menghubungkan layar OLED dengan Arduino menggunakan antarmuka I2C. Jadi, pin SCL layar menuju ke Pin Analog 5 dan pin SDA layar ke Pin Analog 4. Jika sekarang kita menghidupkan proyek dan menempatkan kartu RFID dekat dengan pembaca, kita dapat melihat bahwa proyek bekerja dengan baik! Sekarang saatnya untuk melihat kode proyek.

Langkah 5: Kode Proyek

Kode Proyek
Kode Proyek

Agar kode proyek dapat dikompilasi, kita perlu menyertakan beberapa pustaka. Pertama-tama, kita membutuhkan perpustakaan MFRC522 Rfid. Untuk menginstalnya, buka Sketsa -> Sertakan Perpustakaan -> Kelola perpustakaan. Cari MFRC522 dan instal. Kami juga membutuhkan perpustakaan Adafruit SSD1306 dan perpustakaan Adafruit GFX untuk tampilan. Instal kedua perpustakaan dengan prosedur yang sama. Pustaka Adafruit SSD1306 membutuhkan sedikit modifikasi. Masuk ke folder Arduino -> Libraries, buka folder Adafruit SSD1306 dan edit library Adafruit_SSD1306.h. Baris komentar 70 dan baris komentar 69. Tampilan kami memiliki resolusi 128x64, itulah yang kami definisikan di sini. Sekarang kita siap untuk melihat sekilas kodenya.

Pada awalnya, kami mendeklarasikan nilai tag RFID yang ingin dikenali oleh Arduino. Ini adalah array bilangan bulat.

int kode = {69, 141, 8, 136}; //Ini adalah UID yang disimpan

Selanjutnya, kami menginisialisasi pembaca RFID dan tampilan.

rfid. PCD_Init();display.begin(SSD1306_SWITCHCAPVCC, 0x3C);

Setelah ini, dalam fungsi loop, kami memeriksa tag pada pembaca setiap 100 ms.

Jika ada tag di reader kita baca UID nya dan kita print di display. Selanjutnya, kita membandingkan UID dari tag yang baru saja kita baca, dengan nilai yang disimpan dalam variabel kode. Jika nilainya sama, kami menampilkan pesan UNLOCK, jika tidak kami tidak menampilkan pesan ini.

if(cocok) { Serial.println("\nSaya tahu kartu ini!"); printUnlockMessage(); }else { Serial.println("\nKartu Tidak Dikenal"); }

Tentu saja, Anda dapat memodifikasi kode ini untuk menyimpan lebih dari 1 nilai UID agar proyek dapat mengenali lebih banyak tag RFID.

Ini hanya sebuah contoh. Seperti biasa Anda dapat menemukan kode proyek yang dilampirkan ke Instructable ini.

Langkah 6: Pemikiran & Perbaikan Terakhir

Pemikiran & Perbaikan Terakhir
Pemikiran & Perbaikan Terakhir

Seperti yang Anda lihat dengan biaya yang sangat rendah, kami dapat menambahkan pembaca RFID ke proyek kami. Kita dapat dengan mudah membangun sistem keamanan dengan pembaca seperti ini atau membangun proyek yang lebih menyenangkan.

Tujuan utama saya adalah membuat beberapa permainan interaktif untuk anak-anak menggunakan pembaca RFID ini dan banyak tag RFID. Di video mendatang, kami juga akan mencoba menulis dan membaca data dari tag RFID. Pada titik ini, saya ingin mendengar pendapat Anda tentang pembaca kartu RFID ini. Apakah Anda berencana untuk menggunakannya di salah satu proyek Anda? Silakan kirim komentar atau ide apa pun di bagian komentar di bawah ini, terima kasih!

Direkomendasikan: