Modul Sensor Fingerprint FPM10A

Tutorial Cara Mengakses Modul Sensor FingerPrint FPM10A

Modul Sensor Fingerprint merupakan modul sensor yang berfungsi pemindaian identitas sidik jari manusia yang bersifat unik.

Karena manusia dilahirkan dengan sidik jari yang bersifat unik yang berarti tiap orang mempunyai sidik jari yang berbeda-beda dengan orang lain.

Untuk artikel kali ini akan dibahas bagaimana cara mengakses modul sensor Fingerprint tipe FPM10A dengan mudah.

Dikarenakan sensor ini mudah ditemukan ditoko elektronik atau marketplace dengan relatif terjangkau serta sudah terdapat library dalam proses pemrogramannya.

Penjelasan awal tentang Sensor Fingerprint

Modul Sensor Fingerprint FPM10A

Secara umum prinsip kerja dari sensor sidik jari atau Fingerprint :

  • Pendaftaran atau pengenalan sidik jari sebagai ID (Enroll)
  • Database sebagai penyimpanan data pendaftaran ID (Storage)
  • Perbandingan, pencarian dan pencocokan (Matching and Comparing)

Pada Modul sensor FPM10A dilengkapi dengan memori FLASH sebagai penyimpan sidik jari dan dapat diakses menggunakan mikrokontroler dengan komunikasi UART / Serial TTL.

Contoh pengaplikasian sensor ini, dapat diterapkan pada beberapa sistem antara lain :

  • Sistem keamanan / Security System
  • Attendace time / sistem waktu kehadiran pegawai, siswa, mahasiswa
  • Kunci pintu / Lock door System seperti di hotel, dan lain sebagainya

Spesifikasi dari Sensor FingerPrint FPM10A

  • Tegangan masukan kisaran 3.6 – 6.0 Vdc
  • Minumum arus 120mA
  • Warna backlight : hijau
  • Komunikasi Interface : UART
  • Baud rate : 9600 bps
  • Untuk versi tipe Able to store 127 different fingerprints
  • False Reject Rate (FRR) <1.0%
  • False Accept Rate (FAR) <0.001%
  • Safety level 5

Pinout Sensor memiliki 6 pin yang berlabel pada gambar di bawah ini.

Pinout Sensor Fingerprint FPM10A

Note NC adalah Not Connected sehingga kedua pinout tersebut tidak perlu dihubungkan.

Dikarenakan kabel konektor modul sensor bawaan kadang berwarna merah semua, dimana itu dapat membuat kesalahan dalam wiring ke microcontroller.

Disarankan menambahkan kabel pada ujung kabel dengan ketentuan :

  • NC dipotong
  • VCC : tetap merah
  • GND : hitam
  • TX : hijau
  • RX : biru

Ataupun mengganti kabel konektor sensor tersebut menjadi berwarna seperti gambar dibawah ini

Replacement Wire Connector FPM10A


Tutorial Cara mengakses Modul sensor fingerprint FPM10A

Komponen yang dibutuhkan :

  1. Arduino Uno
  2. Sensor fingerprint FPM10A
  3. Kabel jumper

Library yang dibutuhkan : [ddownload id=”3289″]

Ekstrak Lіbrаrу diatas dan copy paste kan раdа mаѕіng – mаѕіng System Oреrаtіоn :

  • PC (Wіndоwѕ) : Documents/Arduіnо/ lіbrаrіеѕ
  • Mас : (hоmе dіrесtоrу)/Aррlісаtіоnѕ/Arduіnо (Shоw Pасkаgе Cоntеnt)/Cоntеntѕ/Jаvа/Lіbrаrіеѕ
  • Lіnux : (hоmе dіrесtоrу)/ѕkеtсhbооk/lіbrаrіеѕ

Atau juga dapat mengikuti langkah ini, Instalasi melalui Manage libraries

  1. Pastikan sudah install arduino IDE dan terkoneksi dengan internet
  2. Buka arduino IDE dan arahkan kursor pada Sketch > include libraries > Manage libraries Instalasi libraries sensor fingerprint langkah-1
  3. Ketikan kata kunci “Adafruit Fingerprint Sensor” dan klik install Instalasi libraries sensor fingerprint langkah-2
  4. Cek apakah libraries sudah siap digunakan atau belum, dengan cara File > Examples > Adafruit Fingerprint sensor

Rangkaian sederhana untuk tutorial modul sensor ini

Rangkaian arduino uno dan modul sensor fingerprint FPM10A

Keterengan Wiring:

Sensor Fingerprint FPM10A Arduino UNO
VCC 5V out
GND GND
TX PIN D3
RX PIN D2

Cara Enroll Sidik jari baru

Enroll adalah mendaftarkan fingerprint baru ke memori flash sensor.

Setelah modul sensor sidik jari dirangkai sepertI gambar diatas, ikuti langkah-langkah selanjutnya untuk proses enroll fingerprint.

Dan pastikan terlebih dahulu telah menginstal libraries Adafruit sensor fingerprint seperti langkah diatas.

  1. Buka Arduino IDE, arahkan kursor pada program “Enroll” pada libraries yang diinstal, caranya seperti dibawah ini Instalasi libraries sensor fingerprint langkah-3
  2. Upload kode program tersebut, dan buka Serial Monitor dengan kecepatan baud komunikasi 9600
  3. Masukkan ID untuk sidik jari. Karena ini merupakan sidik jari pertama Anda, ketik 1 di sudut kiri atas, lalu klik tombol Kirim Serial monitor Enroll sidik jari
  4. Tempatkan jarimu pada pemindai dan ikuti instruksi pada monitor serial
  5. Pada waktu pindai sidik jari 2 kali pengambilan, dan jika sudah terdapat “Stored!” menandakan bahwa sidik jari yang dipindai baru saja sudah tersimpan dan bisa diuji cobaSerial monitor Enroll sidik jari - tanda enroll berhasil

Pengecekan Program Enroll setelah data tersimpan

Pengecekan ini dilakukan guna sebagai konfirmasi apakah data yang tersimpan sesuai tidak dengan pembacaan data.

Sebelumnya harus enroll beberapa sidik jari, bisa menggunakan ibu jari, telunjuk, jari tengah yang menunjukan pada ID yang berbeda.

Untuk menemukan kecocokan dengan sensor sidik jari, ikuti instruksi sebagai berikut :

  1. Buka Arduino IDE, arahkan kursor pada program “FingerPrints” pada libraries yang diinstal, Program pengecekan data yang tersimpan sensor fingerprint
  2. Upload program dan buka serial monitor dengan baud komunikasi 9600
  3. Pindai jari ke depan sensor fingerprint
  4. Amati pembacaan pemindaian di serial monitor, jika terdapat ID #1 – #3 berarti sudah berhasil terbaca dari program enroll sebelumnya Serial monitor cek data fingerprint

Contoh Project sederhana Show Fingerprint data pada LCD 16×2

Dalam contoh proyek ini, sebelumnya didaftarkan 2 sidik jari dari dua orang yang berbeda. Kemudian pada saat dipindai akan muncul display yang menunjukan nama dari orang yang sedang terpindai pada saat itu di display LCD.

Komponen yang dibutuhkan :

  1. Arduino Uno
  2. Sensor fingerprint FPM10A
  3. Driver LCD PCF8574
  4. LCD 16×2
  5. Kabel jumper

Skema rangkaian

Sensor FingerPrint FPM10A, Arduino uno, dan LCD 16x2

Library yang dibutuhkan : [ddownload id=”1207″]

Ekstrak Lіbrаrу diatas dan copy paste kan раdа mаѕіng – mаѕіng System Oреrаtіоn :

  • PC (Wіndоwѕ) : Documents/Arduіnо/ lіbrаrіеѕ
  • Mас : (hоmе dіrесtоrу)/Aррlісаtіоnѕ/Arduіnо (Shоw Pасkаgе Cоntеnt)/Cоntеntѕ/Jаvа/Lіbrаrіеѕ
  • Lіnux : (hоmе dіrесtоrу)/ѕkеtсhbооk/lіbrаrіеѕ

Program secara keseluruhan 

[sociallocker id=”1344″]

//www.nyebarilmu.com
//2019

#include <Adafruit_Fingerprint.h>
#include <LiquidCrystal_PCF8574.h>
#include <Wire.h>

#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);

int fingerprintID = 00;
String IDname;

Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);

LiquidCrystal_PCF8574 lcd(0x20); // dapat dicek menggunakan i2c scanner atau i2c finder

void setup(){
  Serial.begin(9600);
  finger.begin(57600);

//lcd setup
  lcd.begin(16, 2); // initialize the lcd
  lcd.setBacklight(255);

  if (finger.verifyPassword()) {
    lcd.setCursor(00, 00);
    Serial.println("Sensor ditemukan");
    lcd.print("Sensor ditemukan");
    delay(500);
    lcd.clear();
  }
  else {
    Serial.println("no sensor :(");
    lcd.setCursor(00, 00);
    lcd.print("no sensor :(");
    delay(500);
    lcd.clear();
    while (1) { delay(1); }
  }
  lcd.setCursor(00, 00);
  lcd.print("nyebarilmu.com");
  lcd.setCursor(00, 1);
  lcd.print(" FingerPrint");
  delay(3000);
  lcd.clear();
}

void loop(){
 lcd.setCursor(00, 00);
 lcd.print("Waiting");
  lcd.setCursor(00, 1);
  lcd.print("FingerPrint");
  fingerprintID = getFingerprintIDez();
  delay(50);
  if(fingerprintID == 1 || fingerprintID == 3 || fingerprintID == 4 || fingerprintID == 5){
    IDname = "nyebarilmu_1";
    lcd.clear();
    lcd.setCursor(00, 00);
    lcd.print("ID Name:");
    lcd.setCursor(00, 1);
    lcd.print(IDname);
    delay(3000);
    fingerprintID = 00;
    lcd.clear();
  }
  else if(fingerprintID == 2){
    IDname = "nyebarilmu_2";
    lcd.clear();
    lcd.setCursor(00, 00);
    lcd.print("ID Name:");
    lcd.setCursor(00, 1);
    lcd.print(IDname);
    delay(3000);
    fingerprintID = 00;
    lcd.clear();
  }
}

int getFingerprintIDez() {
  uint8_t x = finger.getImage();
  if (x != FINGERPRINT_OK)  return -1;

  x = finger.image2Tz();
  if (x != FINGERPRINT_OK)  return -1;

  x = finger.fingerFastSearch();
  if (x != FINGERPRINT_OK)  return -1;

  //menulis di komunikasi serial
  Serial.print("Found ID #");
  Serial.print(finger.fingerID);
  Serial.print(" with confidence of ");
  Serial.println(finger.confidence);
  return finger.fingerID;
}

[/sociallocker]

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *