BAB 3 PERANCANGAN DAN PEMBUATAN
3.1. Diagram Blok Sistem
Arduino uno Sensor Pinger print
Buzzer
Drive motor motor Power supply
Gambar 3.1 Diagram blok sistem
3.1.1. Fungsi-fungsi diagram blok
1. Blok Power Supply sebagai sumber tegangan.
2. Blok Sensor Finger Print sebagai pembaca bentuk dari ulir pada jari.
3. Blok Arduino uno sebagai pengontrol.
4. Blok Buzzer sebagai output suara.
5. Blok Drive motor sebagai penggerak.
3.2 Rangkaian Sensor FingerPrint
Gambar 3.2 Rangkaian Sensor Fingerprint
Modul sidik jari sidik jari Arduino dikembangkan optic pengenalan sidik jari
modul Fingerprint sidik jari khusus penggunaan sangat sederhana selama ada
adalah port serial dari mikrokontroler, modul tertanam dapat beroperasi,
MSP430,51, AVR, PIC, ARM, FPGA, Arduino controller sehingga anda
dapat mengoperasikan modul ini. Modul ini dikendalikan melalui port serial,
anda dapat menggunakan port serial PC untuk mengendalikan modul ini.
Produk dengan sensor optic sidik jari, prosesor berkecepatan tinggi DSP,
performa tinggi algoritma pencocokan sidik jari, chip kapasitas FLASH besar
dan perangkat keras lainnya dan komposisi software. Modul sidik jari kinerja
yang stabil, fungsional, baik sidik jari, berbagai fungsi pendaftaran sidik jari,
pencocokan sidik jari, sidik jari pencarian. aplikasi banyak digunakan modul
sidik jari, sistem identifikasi sidik jari untuk semua dari high-end untuk
low-end. Sebagai contoh: kunci pintu keamanan lapangan sidik jari, brankas,
kotak pistol, keuangan.
Sistem kontrol akses, IPC, POS, pelatihan pengemudi, kehadiran dan daerah
lain identitas;
Perangkat lunak manajemen klub swasta, perizinan, bidang manajemen
otorisasi.
Spesifikasi:
Pasokansekarang: Bekerjasaatini: <120mAPuncaksaatini: <140mA
Waktucitrasidikjari: <1,0 detik
JendelaUkuran: 14 × 18 mm
Fitur File: 256 bytes
file template: 512 byte
PenyimpananKapasitas: 1000
Salah Terima Rate (FAR): <0.001% (tingkatkeamanan 3)
Salah Tolak Rate (FRR): <1,0% (tingkatkeamanan 3)
Cariwaktu: <1,0 detik (1: 500, rata-rata)
antarmuka PC: UART (tingkatlogika TTL)
baud rate komunikasi (UART) :( 9600 × N) bps di mana N = 1 ~ 12 (nilai
default N = 6, yaitu 57600bps)
LingkunganKerja: Suhu: -20 ℃untuk + 50 ℃Kelembabanrelatif: 40% RH
sampai 85% RH (non-kondensasi)
PenyimpananLingkungan: Suhu: -40 ℃untuk + 85 ℃Kelembabanrelatif:
<85% H (non-kondensasi)
Dimensi (L × W × H): 56 × 20 × 21.5mm
3.3.Rangkaian Arduino uno
3.3 Rangkaian Arduino uno
Arduino Uno adalah board mikrokontroler berbasis ATmega328 (datasheet).
Memiliki 14 pin input dari output digital dimana 6 pin input tersebut dapat
koneksi USB, jack power, ICSP header, dan tombol reset. Untuk mendukung
mikrokontroler agar dapat digunakan, cukup hanya menghubungkan board Arduino
Uno ke komputer dengan menggunakan kabel USB atau listrik dengan AC yang-ke
adaptor-DC atau baterai untuk menjalankannya.
Uno berbeda dengan semua board sebelumnya dalam hal koneksi
to-serial yaitu menggunakan fitur Atmega8U2 yang diprogram sebagai konverter
USB-to-serial berbeda dengan board sebelumnya yang menggunakan chip FTDI driver
USB-to-serial.Nama “Uno” berartisatu dalam bahasa Italia, untuk menandai
peluncuran Arduino 1.0. Uno dan versi 1.0 akan menjadi versi referensi dari
Arduino. Uno adalah yang terbaru dalam serangkaian board USB Arduino, dan
sebagai model referensi untuk platform Arduino, untuk perbandingan dengan versi
sebelumnya, lihat indeks board Arduino.
Daya
Uno Arduino dapat diaktifkan melalui koneksi USB atau dengan catu daya eksternal
(otomatis).Eksternal (non-USB) daya dapat berasal baik dari AC-ke adaptor-DC
atau baterai. Adaptor ini dapat dihubungkan dengan menancapkan plug jack
pusat-positif ukuran 2.1mm konektor POWER. Ujung kepala dari baterai dapat
dimasukkan kedalam Gnd dan Vin pin header dari konektor POWER.Kisaran
kebutuhan daya yang disarankan untuk board Uno adalah7 sampai dengan 12 volt,
jika diberi daya kurang dari 7 volt kemungkinan pin 5v Uno dapat beroperasi tetapi
tidak stabil kemudian jikadiberi daya lebih dari 12V, regulator tegangan bisa panas
dan dapat merusak board Uno.
Pin listrik adalah sebagai berikut:
VIN. Tegangan masukan kepada board Arduino ketika itu menggunakan sumber
Input dan Output
Masing-masing dari 14 pin digital di Uno dapat digunakan sebagai input atau
output, dengan menggunakan fungsi pinMode (), digitalWrite (), dandigitalRead (),
beroperasi dengan daya 5 volt. Setiap pin dapat memberikan atau menerima
maksimum 40 mA dan memiliki internal pull-up resistor (secara default terputus)
dari 20-50 kOhms. Selain itu, beberapa pin memiliki fungsi khusus:Serial: 0 (RX)
dan 1 (TX). Digunakan untuk menerima (RX) dan mengirimkan (TX) TTL data
serial. Pin ini dihubungkan ke pin yang berkaitan dengan chip Serial ATmega8U2
USB-to-TTL.
3.4. RangkaianDrive Motor.
Gambar 3.4.Rangkaian Drive Motor
Driver motor digunakan untuk mengontrol arah putaran dan kecepatan motor
DC yang merupakan penggerak utama dari rangkaian proyek akhir ini. IC driver
motor L293 yang didalamnya terdapat rangkaian H-Bridge akan mengontrol putaran
motor sesuai data masukan digital yang berasaldari PLC Zelio SR2 B201 BD, dan
pada IC L293 ini juga terdapat pin untuk pengaturan aplikasi PWM (Pulse Width
Modulator) yang akan mengatur kecepatan motor dc yang dikendalikannya. L293 memiliki
rangkaian dual H-Bridge, sehingga mampu mengendalikan dua buah motor DC
sekaligus.
Karakteristikdari driver motor L293 adalah:
1. Teganganoperasi supply sampaidengan 36 Volt.
2. Total arus DC sampaidengan 1A.
3. Tegangan logic ”0” sampaidengan 1,5 Volt.
Fungsidaritiap-tiap pin driver motor L293 adalahsebagaiberikut:
1. Output 1 dan Output 2 (pin 3 dan pin 6)
Pin inimerupakan output untuk bridge A.
2. Vs (pin 8)
Merupakan pin supply teganganuntuk output.
3. Input 1 dan Input 2 (pin 2 dan pin 7)
Pin inidigunakanuntukmengontrol bridge A.
4. Enable 1 dan Enable 2 (pin 1 dan pin 9)
Pin iniberfungsiuntukmengaktifkandanmenonaktifkan bridge Adan bridg B.
5. Ground (pin 4, 5, 12, dan 13)
Berfungsisebagai grounding rangkaian driver.
6. Vss (pin 16)
Pin iniberfungsisebagai supply logic untuk driver.
7. Input 3 dan Input 4 (pin 10 dan 15)
Berfungsisebagaimasukanpada bridge B.
8. Output 3 dan Output 4 (11 dan 14)
3.6. FlowchatSistem
Counter > 5 Buzzer aktif Count=0
Gambar 3.5 Flowchat Sistem
BAB 4 PENGUJIAN DAN HASIL
4.1 Pengujian Arduino uno
Pengujian sistem arduino uno dilakukan dengan memprogram sistem arduino
uno untuk membuat Pin.4 menjadi nilai positif negative 0 dan 1yang diulang dengan
delay 100ms. Kemudian keluaran tegangan dari Pin.4 akan diukur dengan avometer.
Pengujian sistem arduino uno ini memastikan bahwa sistem arduino yang
digunakan pada penelitian ini tidak rusak. Sehingga program yang ditanamkan pada
mikrokontroller mampu untuk mengkontrol Sidik jari untuk pengaman seperti yang
diharapkan.
Untuk pengujian arduino dapat digunakan program standart sebagai berikut :
Void setup() {
PinMode(13, OUTPUT);
}
Void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
Dan kemudian untuk mengupload program, menggunakan tool upload pada
arduino. Apabila pin 13 bisa dilihat pada led yang telah disediakan pada arduino,
terlihat led akan hidup dan mati selama 1 detik dan berulang ulang. Pengujian ini
bertujuan untuk mengetahui arduino dapat digunakan dengan baik atau tidak. Uno
4.2 Pengujian Sensor Fingerprint.
Pengujian ini bertujuan unuk mengetahui apakah sensor fingerprint sudah
terhubung dengan rangkaian arduino dan untuk mengetahui apakah sensor fingerprint
bekerja sesuai fungsinya. Ada pun program pengujian untuk fingerprint sebagai
berikut :
#include <Adafruit_Fingerprint.h>
#include <SoftwareSerial.h>
int getFingerprintIDez();
// pin #2 is IN from sensor (GREEN wire)
// pin #3 is OUT from arduino (WHITE wire)
SoftwareSerial mySerial(2, 3);
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);
// On Leonardo/Micro or others with hardware serial, use those! #0 is green wire, #1
is white
//Adafruit_Fingerprint finger = Adafruit_Fingerprint(&Serial1);
void setup()
{
while (!Serial);
Serial.begin(9600);
Serial.println("Adafruit finger detect test");
// set the data rate for the sensor serial port
if (finger.verifyPassword()) {
Serial.println("Found fingerprint sensor!");
} else {
Serial.println("Did not find fingerprint sensor :(");
while (1);
}
Serial.println("Waiting for valid finger...");
}
void loop() // run over and over again
{
getFingerprintIDez();
delay(50); //don't ned to run this at full speed.
}
uint8_t getFingerprintID() {
uint8_t p = finger.getImage();
switch (p) {
case FINGERPRINT_OK:
Serial.println("Image taken");
break;
case FINGERPRINT_NOFINGER:
Serial.println("No finger detected");
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Communication error");
return p;
case FINGERPRINT_IMAGEFAIL:
Serial.println("Imaging error");
return p;
default:
Serial.println("Unknown error");
return p;
}
// OK success!
p = finger.image2Tz();
switch (p) {
case FINGERPRINT_OK:
Serial.println("Image converted");
break;
case FINGERPRINT_IMAGEMESS:
Serial.println("Image too messy");
return p;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Communication error");
case FINGERPRINT_FEATUREFAIL:
Serial.println("Could not find fingerprint features");
return p;
case FINGERPRINT_INVALIDIMAGE:
Serial.println("Could not find fingerprint features");
return p;
default:
Serial.println("Unknown error");
return p;
}
// OK converted!
p = finger.fingerFastSearch();
if (p == FINGERPRINT_OK) {
Serial.println("Found a print match!");
} else if (p == FINGERPRINT_PACKETRECIEVEERR) {
Serial.println("Communication error");
return p;
} else if (p == FINGERPRINT_NOTFOUND) {
Serial.println("Did not find a match");
return p;
} else {
return p;
}
// found a match!
Serial.print("Found ID #"); Serial.print(finger.fingerID);
Serial.print(" with confidence of "); Serial.println(finger.confidence);
}
// returns -1 if failed, otherwise returns ID #
int getFingerprintIDez() {
uint8_t p = finger.getImage();
if (p != FINGERPRINT_OK) return -1;
p = finger.image2Tz();
if (p != FINGERPRINT_OK) return -1;
p = finger.fingerFastSearch();
if (p != FINGERPRINT_OK) return -1;
// found a match!
Serial.print("Found ID #"); Serial.print(finger.fingerID);
Serial.print(" with confidence of "); Serial.println(finger.confidence);
return finger.fingerID;
Setelah sensor fingerprint sudah dapat bekerja dengan baik, selanjut nya
menyimpan sidikjari di dalam memori sensor fingerprint.
4.1 Gambar program penyimpan sidik jari
Scanning sidik jari dilakukan dengan alat elektronik. Sebelelum sensor
fingerprint dapat digunakan, dilakukan pendaftaran pola alur sidik jari dengan
aplikasi SFG Demo. Setelah aplikasi dibuka, dan sensor fingerprint terhubung pada
aplikasi SFG Demo melalui USB kemudian letakkan jari pada sensor tersebut. Hasil
scanning lalu disimpan dalam format digital pada saat registrasi atau enrollment atau
pendaftaran sidik jari.
Setelah itu, rekaman sidik jari tersebut diproses dan dibuatkan daftar pola
fitur sidik jari yang unik. Pola fitur sidik jari yang unik tersebut kemudian disimpan
dalam memory atau database. Pola sidik jari yang unik ini disebut dengan istilah
minutiae. Pada saat identifikasi, pola minutiae tersebut kemudian dicocokkan dengan
hasil scan sidik jari.
Dengan tehnik ini, pola sidik jari direkam atau discan dengan menggunakan
cahaya. Alat perekam (fingerprint scanner) yang digunakan adalah berupa kamera
digital.
Tempat untuk meletakkan ujung jari disebut permukaan sentuh (scan area), di
bawah scan area, terdapat lampu atau pemancar cahaya yang menerangi permukaan
ujung jari. Hasil pantulan cahaya dari ujung jari ditangkap oleh alat penerima yang
selanjutnya menyimpan gambar sidik jari tersebut ke dalam memori.
jari. Jika kualitas sidik jari miskin (poor) atau luka, maka kualitas hasil pembacaan
akan tidak bagus. Kelemahan lain adalah tehnik ini bisa diakali dengan jari palsu.
Tapi tehnik ini mempunyai keuntungan mudah dilakukan dan tidak membutuhkan
biaya yang mahal.
Untuk penyimpan memori sensor finger print hanya dapat menyimpan 10
data. Setelah langkah-langkah diatas dapat dijalankan dan penyimpanan sukses,
maka sensor finger print sudah dapat digunakan.
4.3 Pengujian Buzzer
Pada alat Pengaman Sidik jari ini dilengkapi dengan lampu led dan buzzer
yang di gunakan untuk pemberitahuan kebenaran sensor fingerprint. Dalam sistem
kerjanya lampu led dan buzzer ini bekerja sidik jari yang terdeteksi dan untuk buzzer
digunakan sebagai indikator alarm apabila terdeteksi sidikjari, yang mana dalam
perancanangan sebagai penanda alarm akan berbunyi jika sidik jari akan
dimasukkan. Adapun program untuk menjalankan Buzzer untuk Arduino uno :
Adapun dinamo pada alat ini berfungsi sebagai aplikasi untuk menjalankan
yang benar dimasukkan maka dinamo akan bergerak, dan jika sidik jari salah
dimasukkan maka dinamo akan mati. Adapun program penguji pada dinamo ini
adalah sebagai berikut :
Void setup() {
PinMode(13, OUTPUT);
}
Void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
Apabila sidik jari yang benar dimasukkan, pada pin 13 yang telah disediakan
Arduino Uno, terlihat motor/dinamo akan berputar. Dan apabila sidik jari yang salah
dimasukkan, pada pin 13 yang ada pada Arduino terlihat motor/dynamo aka berhenti
bergerak. Pengujian ini bertujuan untuk mengetahui motor/dinamoyang digunakan
4.5 Hasil Pengujian alat
Pengujian dilakukan untuk mengetahui cara kerja dan fungsi alat, apakah
dapat bekerja dengan baik atau tidak. Pengujian dilakukan dengan cara alat yang
dibuat penulis. Sensor alat yang dibuat penulis dapat dilihat pada gambar 4.2.
Gambar 4.2. Alat Penulis
Data yang dapat disimpan dalam memori fingerprint maksimal 10 data. Jari yang
yang bisa ditempelkan pada sensor adalah jari yang telah terdaftar dalam memori
fingerprint dan data jari yang tersimpan pada alat adalah data jari penulis yaitu
Fusen Abednego Siagian dan Marthin F Purba.
4.5.1 Indikator Alat Penulis
Tabel 4.1 Indikator Alat
No Sidik jari Buzzer Dinamo/Motor LED
1 Benar Bunyi Berputar Hidup
2 Salah Bunyi Tidak Berputar Mati
Pengujian alat sensor fingerprint dilakukan saat alat berhubungan dengan adaptor.
LED serta dinamo akan berputar begitu juga sebaliknya, jika jari tangan yang salah
dimasukkan buzzer akan bunyi tetapi dynamo tidak berputar dan LED mati.
4.5.2 Sistem kerja alat.
Pada alat ini batas kesalahan sidik jari yang dimasukkan maksimal 6 kali, jika
melebihi batas maksimum maka buzzer yang ada pada alat akan berbunyi sesuai
delay yang ada pada program, timer yang digunakan pada program 1000 ms.
Daya input yang digunakan untuk menghidupkan alat penulis adalah adaptor
dan USB yaitu sebesar 0.5A – 2.0A. Daya input yang digunakan penulis adalah
adaptor dengan daya 2.0 Ampere, jika daya yang digunakan pada alat dibawah 2
ampere, maka dynamo tidak dapat berputar dengan baik tetapi alat tetap dapat
BAB 5 PENUTUP
5.1.Kesimpulan
Setelah melakukan tahap perancangan dan pembuatan sistem yang kemudian
dilanjutkan dengan tahap pengujian dan analisa maka dapat diambil kesimpulan
sebagai berikut :
1. Prinsip Kerja pada Sensor Fingerprint adalah dengan cara merekam sidik jari
dan menyimpan kedalam memori sebagai kata sandi pengaman.
2. Dalam aplikasi alat sensor fingerprint ketika sensor membaca sidik jari yang
benar maka motor akan bergerak atau berkerja, dan jika sensor fingerprint
membaca sidik jari yang salah maka motor tidak akan berkerja.
3. Dalam Sistem Transmiter (Pengirim) data diprogram kemudian masuk ke
Arduino. Maka jika terdeteksi sidik jari yang salah sampai enam kali
percobaan, Arduino akan mengirim signal ke Buzzer untuk membunyikan
5.2.Saran
Dari hasil Proyek ini masih terdapat beberapa kekurangan dan dimungkinkan
untuk pengembangan lebih lanjut.Oleh karenanya penulis merasa perlu untuk
memberi saran sebagai berikut:
1. Harapannya alat ini dapat dikembangkan untuk lebih baik lagi dan dapat
mejadi pendorong kemajuan teknologi yang ada di kehidupan sehari-hari.
2. Diharapkan alat yang saya rancang ini dapat digunakan di keperluan