Kontrol LED Arduino Dengan RFID MFRC522

Radio Frequency Identification atau sering disebut RFID merupakan sistem identifikasi nirkabel, jadi untuk mengidentifikasi suatu identitas yang berupa kartu atau seperti gantungan kuncil dsb, cukup mengetapnya ke modul rfidnya, modul rfid tersebut akan membaca informasi kartu tersebut, oleh karena itu RFID banyak di aplikasikan di kehidupan sehari-hari, seperti kartu commuter line (kereta), pengaman brangkas, sistem absensi, dan masih banyak lagi.

ada banyak jenis rfid saat ini, tapi yang saya tahu dan yang saya pernah gunakan baru dua jenis, yaitu rfid dengan komunikasi UART dan rfid dengan komunikasi SPI, untuk rfid dengan komunikasi UART saya menggunakan RDM6300 dan rfid degan komunikasi SPI saya menggunakan MFRC522, selain perbedaan dalam bentuk komunikasinya rfid ini juga mempunya perbedaan frekuensi pembacaannya, kartu yang untuk pembacaan rfid terdapat sebuah chip, (dapat di lihat dengan cara di dekatkan sinar yang cukup terang, seperti sinar pada senter), untuk hal ini saya belum begitu tahu apa fungsi dari chip tersebut, tapi menurut saya chip yang berada di kartu tersebut akan memberikan sebuah informasi dengan frekuensi tertentu. frekuensi yang dapat di baca oleh rfid RDM6300 yaitu 125 kHz sedangkan frekuensi yang dapat di baca oleh rfid MFRC522 adalah 13.56 MHz.



untuk postingan kali ini saya  menggunakan rfid MFRC522, modul rfid ini dapat membaca informasi dalam sebuah kartu dan dapat menuliskan informasi kedalam kartu, informasi biasanya dalam bentuk Hexadecimal, rfid ini akan di hubungkan ke arduino uno, dan berikut pin-pin yang harus di hubungkan

                     MFRC522       Arduino Uno
Signal               Pin                   Pin
RST/Reset        RST                  9
SPI SS             SDA(SS)          10
SPI MOSI         MOSI               11 / ICSP-4
SPI MISO         MISO               12 / ICSP-1
SPI SCK          SCK                 13 / ICSP-3   

untuk percobaan kali ini saya menggunakan library mfrc522 dan TimerOne, ada 4 kartu yang akan di baca, setiap 1 kartu akan menyalakan 1 led, led akan menyala selama beberapa detik setelah itu led akan mati, karena kartu yang di gunakan nanti mempunyai banyak informasi seperti informasi id kartu dan informasi lainnya, untuk itu pembacaan informasi pada kartu, saya hanya membaca informasi id-nya saja, yang terdiri dari 4 byte, berikut hasilnya


sebelum melakukan percobaan tersebut, kita harus tau informasi id setiap kartunya, dan di akhir postingan ini sudah saya sediakan source codenya dalam bentuk link download, untuk membaca id setiap kartu, id tersebut dapat di lihat di serial monitor pada software arduino, 

konsep dari percobaan di atas adalah, informasi id yang sudah di dapat di simpan di sebuah variabel terlebih dahulu, dan saya menggunakan variabel dengan tipe data string, setelah itu saat kartu rfid di tap, informasi pada id tersebut di simpan di variabel yang berbeda dan menggunakan tipe data string, setelah di simpan, di bandingkan dengan variabel yang sudah di simpan sebelumya, jika proses perbandingan sama, akan menyalakan led berdasarkan ketentuan, led akan menyala beberapa detik dan setelah itu mati, untuk mematikan led, saya menggunakan timer pada arduino (bukan delay), jika menggunakan delay akan ada proses jeda dalam pembacaan kartu, sedangkan jeda led yang hidup sekitar 5 detik, jadi saya menggunakan timer, selain untuk menghilangkan proses jeda, timer ini berfungsi untuk berjalan secara independen/bebas, karena dalam source code ini terdapat fungsi mfrc522 yang mana akan melanjutkan program setelah di tap oleh kartu, jadi selama tidak di tap kartu, program akan terus berulang di fungsi "siap di tap" alias tidak melanjutkan program, oleh karena itu saya menggunakan fungsi timer untuk bisa berjalan di luar program tersebut. 

cukup sekian untuk postingan kali ini, dan jangan lupa untuk bilang "Alhamdulillah" :)



Download http://ouo.io/7I6Hl

semoga bermanfaat bagi agan-agan..
semoga berhasil mencobanya..

*..sesama blogger harus saling menghargai, jika agan-agan ingin mengcopas harap cantumkan alamat urlnya, Terimakasih..*