kunci pintu otomatis berbasis arduino dan rfid

Upload: fauzi-bin-abi-mustofa

Post on 05-Jul-2018

270 views

Category:

Documents


6 download

TRANSCRIPT

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    1/14

    PROTOTIPE KUNCI PINTU OTOMATIS BERBASIS

    ARDUINO DAN RFID

    by : AJI PRAKOSO

    Pernahkah anda pergi ke hotel yang jika kita ingin membuka kunci pintunya kita harus menempelkan

    atau mendekatkan sebuah kartu? Tahukah anda teknologi apa yang digunakan pada pintu tersebut?

    Teknologi yang digunakan pada kunci pintu tersebut adalah teknologi bernama RFID atau  Radio

     Frequency Identification. Setiap pintu kamar di hotel yang menggunakan teknologi RFID dipasangi

    sebuah alat pembaca RFID ( RFID reader ) alat pembaca tersebut sudah diprogram untuk hanya

    membuka kunci pintu jika kartu RFID yang discan (dengan cara didekatkan) sesuai dengan nomor 

    kamar misalnya untuk kamar nomor !" alat pembaca RFID di kamar tersebut hanya akan membuka

    kuncinya jika kartu RFID nomor !" didekatkan pada alat pembaca RFID dan tidak akan membuka

    kunci jika yang digunakan adalah kartu RFID yang lainnya# $artu yang digunakan disebut dengan

    PI%% ( Proximity Integrated Circuit Card )#

    Terinspirasi dari teknologi yang digunakan di pintu kamar hotel tersebut saya ter&ikir untuk membuat

    alat serupa menggunakan board   mikrokontroler yang saya miliki 'rduino no# Setelah Googling 

    sanasini untuk mencari alat dan re&erensi akhirnya saya menemukan alat pembaca RFID dengan tipe

    R%*!! dengan harga yang sangat bersahabat untuk kantong mahasis+a# 'khirnya saya membeli alat

    tersebut dengan harga ,*#--- Rupiah (Sudah termasuk satu buah kartu PI%%)#

     .ah kali ini saya akan membagikan tutorial untuk membuat alat pembaca RFID dengan

    menggunakan mikrokontroler 'T"!/PP pada 'rduino no dan pembaca RFID tipe R%*!!#

    BAGIAN 1 : CARA KERJA ALAT

    • Pengguna menscan kartu PI%% dengan cara mendekatkan kartu ke alat pembaca RFID

    • 'lat pembaca RFID akan mendeteksi nomor identitas kartu PI%% yang disebut ID jika ID

    sesuai maka lampu akan berubah menjadi +arna hijau dan kunci pintu (menggunakan ser0o)akan terbuka sedangkan jika kartu PI%% yang discan tidak sesuai dengan yang kita program

    lampu akan berubah merah bu11er akan berbunyi kencang dan kunci tidak akan terbuka#

    • Setelah delay selama !*--ms (!* detik) pengunci akan ke posisi semula kunci akan kembali

    ke posisi terkunci dan lampu akan berubah menjadi +arna biru#

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    2/14

    BAGIAN 2 : ALAT-ALAT YANG DIBUTUHKAN

    • 2 3uah 3oard 4ikrokontroler (Saya menggunakan 'rduino no)

    • 2 3uah RFID Reader tipe R%*!!

    • $artu PI%%

    • 2 3uah 3u11er *0

    • 2 3uah 56D R73

    • $abel jumper seperlunya#

    BAGIAN 3 : KONEKSI DAN PENGKABELAN

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    3/14

    Perhatikan skema diba+ah ini 8

    • R%*!! 4emiliki / buah pin yaitu SD' S%$ 49SI 4IS9 IR: 7.D RST dan ""0

    untuk catu daya# ;ang kita gunakan hanya , pin saja pin IR: tidak kita gunakan#

    • Ser0o memiliki " buah pin yaitu

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    4/14

    3 Digital !

    %ommon 7.D

    BUZZER 

    BUZZER ARDUINO UNO

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    5/14

    "#"0 "#"<

    BAGIAN ! : KODING PROGRAM

    Setelah semua alat terkoneksi dengan 'rduino langkah terakhir adalah memprogam si

    4ikrokontroler agar dapat mengerjakan tugasnya sebagai otak dari alat kunci otomatis berbasis RFID

    ini# 3erikut ini adalah kode program 'rduino yang saya gunakan untuk membuat project kunci pintu

    otomatis ini 8

    @A PR9T9TIP6 $.%I PI.T 9T94'TIS 36R3'SIS 'RDI.9 D'. RFID

    A Desember !-2= 'BI PR'$9S9

     A

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    6/14

     A 4enggunakan 5ibrary 4FR%*!!

     A https8@@github#com@miguelbalboa@r&id

     A Dibuat oleh 4iguel 3alboa (circuitito#com)

     A@

    Cinclude 66PR94#hE @@ 4emanggil 5ibrary 66PR94

    Cinclude SPI#hE @@ 4emanggil 5ibrary SPI

    Cinclude 4FR%*!!#hE @@ 4emanggil 5ibrary 4FR%*!!

    Cinclude Ser0o#hE @@ 4emanggil 5ibrary Ser0o

     boolean match &alseG

     boolean program4ode &alseG

     byte stored%ardH=G

     byte read%ardH=G

     byte master%ardH= J-Kec-K&-Ke-K,LG @@ ID kartu yang diijinkan masuk 8 6%F6,

    int r =G @@ Pin Red pada 56D R73

    int g "G @@ Pin 7reen pada 56D R73

    int b !G @@ Pin 3lue pada 56D R73

    int bu11 *G @@ Pin data untuk bu11er 

    Ser0o ser0o2G @@ Ser0o kita beri nama Mser0o2M

    Cde&ine SSNPI. 2-

    Cde&ine RSTNPI.

    4FR%*!! m&rc*!!(SSNPI. RSTNPI.)G

    0oid setup() J

      Serial#begin(>--)G

    SPI#begin()G

      m&rc*!!#P%DNInit()G

      Serial#println(M $.%I 9T94'TIS 36R3'SIS RFID M)G

      Serial#println(MM)G

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    7/14

      Serial#println(MSilahkan S%'. $'RT '.D' OM)G

      Serial#println(MM)G

      pin4ode(bu11 9TPT)G

      pin4ode(r 9TPT)G

      pin4ode(g 9TPT)G

      pin4ode(b 9TPT)G

      ser0o2#attach(>)G

      digitalrite(b QI7Q)G

      ser0o2#+rite(!-)G

    L

    0oid loop ()

    J

      int successReadG

    do

    J

      successRead getID()G

    L

     

    +hile (OsuccessRead)G

    i& (is4aster(read%ard)) @@ Bika kartu yang di didekatkan ke pembaca adalah 4aster%ard (6%F6,)4aka akan muncul 8

      J

    Serial#println(M'nda dii1inkan untuk masukOM)G

      Serial#println(MM)G

      Serial#println(MM)G

      Serial#println(MM)G

      digitalrite(b 59)G @@ 56D ;ang tadinya ber+arna biru (stand by) dimatikan berubah menjadi

      digitalrite(g QI7Q)G @@ +arna hijau

      beep"(bu11)G @@ 3u11er akan mengeluarkan bunyi beep

      ser0o2#+rite(-)G @@ Posisi ser0o akan berubah menjadi - derajat (posisi buka kunci)

      delay(!*--)G @@ Setelah delay selama !*--ms (!* detik)

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    8/14

      digitalrite(b QI7Q)G @@ 5ampu 56D akan berubah kembali menjadi ber+arna biru dan

      digitalrite(g 59)G

      ser0o2#+rite(-)G @@ Posisi ser0o akan kembali ke - derajat (posisi mengunci)#

      L

     

    else @@ Bika kartu yang didekatkan ke pembaca 3$'. 4aster%ard (6%F6,) 4aka akan muncul 8

      J

      Serial#println(M'nda DI5'R'.7 4'S$ OOM)G

      Serial#println(MM)G

      Serial#println(MM)G

      Serial#println(MM)G

      digitalrite(r QI7Q)G @@ 56D akan berubah menjadi ber+arna merah

      digitalrite(b 59)G

      beep!(bu11)G @@ 3u11er akan mengeluarkan bunyi beep panjang setelah beep selesai

      digitalrite(b QI7Q)G @@ lampu 56D akan kembali menjadi ber+arna biru#

      digitalrite(r 59)G

      L

    L

    int getID()

    J

      i& ( O m&rc*!!#PI%%NIs.e+%ardPresent())

    J

    return -G

      L

      i& ( O m&rc*!!#PI%%NRead%ardSerial())

    J

      return -G

      L

     

    Serial#print(M.949R ID '.D' 'D'5'Q 8 M)G

      &or (byte i -G i m&rc*!!#uid#si1eG i) J

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    9/14

      read%ardHi m&rc*!!#uid#uid3yteHiG

      Serial#print(read%ardHi Q6)G

      L

      Serial#println(MM)G

      Serial#println(MM)G

      m&rc*!!#PI%%NQalt'()G

      return 2G

    L

    0oid readID( int number ) J

      int start (number A = ) "G

      &or ( int i -G i =G i ) J

      stored%ardHi 66PR94#read(starti)G

      L

    L

     boolean checkT+o ( byte aH byte bH ) J

      i& ( aH- O .55 )

    match trueG

    &or ( int k -G k =G k ) J

    i& ( aHk O bHk )

      match &alseG

      L

      i& ( match ) J

    return trueG

    L

      else J

      return &alseG

    L

    L

     boolean is4aster( byte testH ) J

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    10/14

      i& ( checkT+o( test master%ard ) )

      return trueG

      else

      return &alseG

    L

    0oid beep!(int K) @@ Program untuk beep panjang (jika kartu yang discan tidak sesuai)

    J

      digitalrite(K QI7Q)G

      delay(2---)G

      digitalrite(K 59)G

      delay(*--)G

      digitalrite(K QI7Q)G

      delay(2---)G

      digitalrite(K 59)G

      delay(*--)G

      digitalrite(K QI7Q)G

      delay(2---)G

      digitalrite(K 59)G

      delay(*--)G

      digitalrite(K QI7Q)G

      delay(2---)G

      digitalrite(K 59)G

      delay(*--)G

    L

    0oid beep"(int K) @@ Program untuk beep pendek (jika kartu yang di scan sesuai)

    J

      digitalrite(K QI7Q)G

      delay(*-)G

      digitalrite(K 59)G

      delay(*-)G

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    11/14

      digitalrite(K QI7Q)G

      delay(*-)G

      digitalrite(K 59)G

      delay(*-)G

      digitalrite(K QI7Q)G

      delay(*-)G

      digitalrite(K 59)G

      delay(*-)G

      digitalrite(K QI7Q)G

      delay(*-)G

      digitalrite(K 59)G

      delay(*-)G

    L

    $ode program yang saya buat diatas juga bisa diunduh di "##$:%%b'(y%K)*+&RFID di &ile tersebut

     juga saya masukkan library 4FR%*!! buatan M&,)( B.(b/.# Sebelum memprogram 'rduino

     jangan lupa tambahkan library 4FR%*!! ke &older library aplikasi ID6 'rduino anda# 'da dua cara

    untuk menambahkan library ke aplikasi ID6 'rduino anda cara pertama adalah dengan mengimpor 

    secara otomatis dari &ile berekstensi 1ip caranya dengan memilih menu Sketch EE Import 5ibrary EE

    'dd 5ibraryU lalu pilih &ile 1ip yang berisi library yang ingin ada impor# perhatikan gambar berikut ini

    8

    http://bit.ly/KunciRFIDhttp://bit.ly/KunciRFID

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    12/14

    %ara kedua adalah cara manual dengan cara mengcopy &older library yang anda unduh ke &older 

    libraries 'rduino yang ada di 4y DocumentsV'rduinoVlibrariesVU biasanya didalam &older library

    minimal ada &ile dengan ekstensi #cpp dan #h#

    3erikut ini adalah penampakanU kunci pintu otomatis berbasis 'rduino dan RFID yang saya buat 8

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    13/14

    ntuk lebih jelasnya saya juga sudah membuat 0ideo demonstrasi yang saya unggah ke ;ouTube#

    3erikut link nya 8 "##$0:%%'y/)#)b'+/%.#+"454YILRL.06E

    BAGIAN : APLIKASI DAN FUNGSI

    Project kunci pintu otomatis yang saya buat ini masih dalam bentuk prototipe karena untuk pengunci

     pintunya hanya menggunakan sebuah ser0o untuk pengaplikasian dalam dunia nyata bisa

    menggunakan Electrical Solenoid Door Lock seperti pada gambar diba+ah ini

    https://www.youtube.com/watch?v=vYeILRLas9Ehttps://www.youtube.com/watch?v=vYeILRLas9E

  • 8/15/2019 Kunci Pintu Otomatis Berbasis Arduino Dan RFID

    14/14

    Dengan menggunakan  Electrical Solenoid Door Lock  tersebut dapat menggantikan ser0o sebagai

     pengunci pintu yang lebih kuat dan lebih aman#

    Bika untuk pengunci sudah diganti dengan 6lectrical Solenoid Door 5ock maka alat pengunci

    otomatis yang dibuat sudah bisa ber&ungsi sebagai alat pengunci otomatis pada pintu ruangan di

    rumah anda# 'nda tidak perlu lagi membuka kunci secara manual tinggal dekatkan kartu PI%% anda

    ke alat pembaca RFID lalu kunci pintu ruangan anda akan otomatis terbuka# Selain praktis juga

    canggih#

    BAGIAN 7 : PENGEMBANGAN

    Selain kunci pintu otomatis masih banyak hal yang bisa kita lakukan dengan menggunakan teknologi

    RFID ini misalnya untuk sistem pembayaran di restoran (sudah banyak digunakan di  food court 

    mall) pembayaran di gerbang tol bisa juga digunakan sebagai kartu mahasis+a yang multi&ungsi#

    'lat RFID yang terbilang murah bisa menjadi alasan kuat digunakannya teknologi RFID apalagi jika

    dibandingkan dengan teknologi magnetic card  (biasa digunakan di kartu 'T4) yang alatnya terbilang

    mahal#