Skip to main content

Installasi Laravel 9 atau 10

Program FingerPrint Dengan Arduino (ENROLL, FINGEPRINT, DELETE)

Cara Mudah Program FingerPrint Dengan Arduino (ENROLL, FINGEPRINT, DELETE)

Yang perlu kamu siapkan adalah:

  1. 1x Arduino Uno BELI
  2. 1x FingerPrint Sensor BELI

Kemudian rangkai seperti pada gambar dibawah ini:

Sebelum masuk pemrograman, Kamu WAJIB untuk mendownload Library FingerPrint Sensor, lalu add ke Arduino IDE kamu.

Download Adafruit Fingerprint Sensor Library Master

Bagi yang belum tau cara ADD Library ke Arduino IDE, silahkan ikuti Tutorial dibawah ini:

Bagaimana Cara Memasukan Library Ke Aplikasi Arduino IDE?

***

#1 ENROLL

Selanjutnya adalah kita akan Upload Program Enroll, yaitu Program untuk mendaptarkan Jari kamu ke Fingerprint Sensor. Silahkan gunakan program dibawah ini:

#include "Adafruit_Fingerprint.h"
#include "SoftwareSerial.h"
SoftwareSerial mySerial(10, 11);
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);
uint8_t id;

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

  if (finger.verifyPassword()) {
    Serial.println("FingerPrint Sensor Ditemukan!");
  } else {
    Serial.println("FingerPrint Sensor Tidak Ditemukan! :(");
    while (1) {
      delay(1);
    }
  }

}

void loop() {
  ENROLL();
}

//---------------------------------------ENROLL--------------------------------------------------------------//
void ENROLL() {
  Serial.println("Ready to enroll a fingerprint!");
  Serial.println("Please type in the ID # (from 1 to 127) you want to save this finger as...");
  id = readnumber();
  if (id == 0) {// ID #0 not allowed, try again!
    return;
  }
  Serial.print("Enrolling ID #");
  Serial.println(id);

  while (!  getFingerprintEnroll() );
}

//------------------------------------PROSES ENROLL----------------------------------------------------------//

uint8_t readnumber(void) {
  uint8_t num = 0;

  while (num == 0) {
    while (! Serial.available());
    num = Serial.parseInt();
  }
  return num;
}

//----RETURN NUM-------------------//

uint8_t getFingerprintEnroll() {
  int p = -1;
  Serial.print("Waiting for valid finger to enroll as #"); Serial.println(id);
  while (p != FINGERPRINT_OK) {
    p = finger.getImage();
    switch (p) {
      case FINGERPRINT_OK:
        Serial.println("Image taken");
        break;
      case FINGERPRINT_NOFINGER:
        Serial.println(".");
        break;
      case FINGERPRINT_PACKETRECIEVEERR:
        Serial.println("Communication error");
        break;
      case FINGERPRINT_IMAGEFAIL:
        Serial.println("Imaging error");
        break;
      default:
        Serial.println("Unknown error");
        break;
    }
  }

  // OK success!

  p = finger.image2Tz(1);
  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");
      return p;
    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;
  }

  Serial.println("Remove finger");
  delay(2000);
  p = 0;
  while (p != FINGERPRINT_NOFINGER) {
    p = finger.getImage();
  }
  Serial.print("ID "); Serial.println(id);
  p = -1;
  Serial.println("Place same finger again");
  while (p != FINGERPRINT_OK) {
    p = finger.getImage();
    switch (p) {
      case FINGERPRINT_OK:
        Serial.println("Image taken");
        break;
      case FINGERPRINT_NOFINGER:
        Serial.print(".");
        break;
      case FINGERPRINT_PACKETRECIEVEERR:
        Serial.println("Communication error");
        break;
      case FINGERPRINT_IMAGEFAIL:
        Serial.println("Imaging error");
        break;
      default:
        Serial.println("Unknown error");
        break;
    }
  }

  // OK success!

  p = finger.image2Tz(2);
  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");
      return p;
    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!
  Serial.print("Creating model for #");  Serial.println(id);

  p = finger.createModel();
  if (p == FINGERPRINT_OK) {
    Serial.println("Prints matched!");
  } else if (p == FINGERPRINT_PACKETRECIEVEERR) {
    Serial.println("Communication error");
    return p;
  } else if (p == FINGERPRINT_ENROLLMISMATCH) {
    Serial.println("Fingerprints did not match");
    return p;
  } else {
    Serial.println("Unknown error");
    return p;
  }

  Serial.print("ID "); Serial.println(id);
  p = finger.storeModel(id);
  if (p == FINGERPRINT_OK) {
    Serial.println("Stored!");
  } else if (p == FINGERPRINT_PACKETRECIEVEERR) {
    Serial.println("Communication error");
    return p;
  } else if (p == FINGERPRINT_BADLOCATION) {
    Serial.println("Could not store in that location");
    return p;
  } else if (p == FINGERPRINT_FLASHERR) {
    Serial.println("Error writing to flash");
    return p;
  } else {
    Serial.println("Unknown error");
    return p;
  }
}

//---------------------------------------ENROLL END--------------------------------//

Jika sudah DONE UPLOADING, silahkan buka Serial Monitor untuk mendaptarkan jari kamu.

Silahkan masukan angka dari 1-127, nomer untuk menyimpan jari kamu lalu klik Send atau tekan Enter.
Lalu letakan Jari kamu ke Fingerprint sensor.

Kemudian lepas Jari Kamulalu letakan lagi untuk Konfirmasi.

Jika sudah ada keterangan Stored, berarti jari kamu berhasil di daftarkan.

***

#2 FINGERPRINT

Setelah selesai melakukan Enroll, selanjutnya kamu bisa coba program Fingerprint, yaitu program untuk cek jari kamu terdaftar atau tidak. Silahkan gunakan program dibawah ini:

#include "Adafruit_Fingerprint.h"
#include "SoftwareSerial.h"
SoftwareSerial mySerial(2, 3);
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);

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

  if (finger.verifyPassword()) {
    Serial.println("FingerPrint Sensor Ditemukan!");
  } else {
    Serial.println("FingerPrint Sensor Tidak Ditemukan! :(");
    while (1) {
      delay(1);
    }
  }

}

void loop() {
  FINGERPRINT();
}

//----------------------------------------------------FINGERPRINt----------------------------------------------//
void FINGERPRINT() {
  getFingerprintIDez();
  delay(50);
}

//----------------------------------------------------PROSES FINGERPRINT--------------------------------------//

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");
      return p;
    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");
      return p;
    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 {
    Serial.println("Unknown error");
    return p;
  }

  // found a match!
  Serial.print("Found ID #"); Serial.print(finger.fingerID);
  Serial.print(" with confidence of "); Serial.println(finger.confidence);

  return finger.fingerID;
}

// 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;
}

//--------------------------------END FINGERPRINT----------------------------------------------//

jika sudah DONE UPLOADING, silahkan buka Serial Monitor, lalu letakan jari kamu di sensor.

Lalu jika muncul Found ID, berarti jari kamu sudah terdaftar di Fingerprint Sensor.

***

#3 DELETE

Program terakhir adalah program Delete, ini fungsinya untuk menghapus data Jari yang sudah terdaftar di Fingerprint Sensor. Silahkan gunakan program dibawah ini:

#include "Adafruit_Fingerprint.h"
#include "SoftwareSerial.h"
SoftwareSerial mySerial(10, 11);
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);

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

  if (finger.verifyPassword()) {
    Serial.println("FingerPrint Sensor Ditemukan!");
  } else {
    Serial.println("FingerPrint Sensor Tidak Ditemukan! :(");
    while (1) {
      delay(1);
    }
  }

}

void loop() {
  DELETE();
}


//------------------------------------------DELETE-----------------------------------//
void DELETE() {
  Serial.println("Please type in the ID # (from 1 to 127) you want to delete...");
  uint8_t id = readnumber();
  if (id == 0) {// ID #0 not allowed, try again!
    return;
  }
  Serial.print("Deleting ID #");
  Serial.println(id);
  deleteFingerprint(id);
}
//------------------------------------------PROSES DELETE---------------------------//

uint8_t readnumber(void) {
  uint8_t num = 0;

  while (num == 0) {
    while (! Serial.available());
    num = Serial.parseInt();
  }
  return num;
}

//----RETURN NUM-------------------//


uint8_t deleteFingerprint(uint8_t id) {
  uint8_t p = -1;

  p = finger.deleteModel(id);

  if (p == FINGERPRINT_OK) {
    Serial.println("Deleted!");
  } else if (p == FINGERPRINT_PACKETRECIEVEERR) {
    Serial.println("Communication error");
    return p;
  } else if (p == FINGERPRINT_BADLOCATION) {
    Serial.println("Could not delete in that location");
    return p;
  } else if (p == FINGERPRINT_FLASHERR) {
    Serial.println("Error writing to flash");
    return p;
  } else {
    Serial.print("Unknown error: 0x"); Serial.println(p, HEX);
    return p;
  }
}

jika sudah DONE UPLOADING, silahkan buka Serial Monitor.

Lalu masukan no ID yang ingin kamu hapus, lalu klik Send atau Tekan Enter.

Jika sudah ada keterangan Deleted!, artinya data jari yang terdaptar di Fingerprint Sensor sudah terhapus. Silahkan kamu coba letakan lagi jarinya di sensor untuk mengetes.

 

sumber  : https://smkitjannatulhazni.sch.id/2020/02/12/cara-mudah-program-fingerprint-dengan-arduino-enroll-fingeprint-delete/

Comments

Shidqi Skincare said…
https://bit.ly/PPKM_BLI

Popular posts from this blog

Menampilkan peta .shp dengan MS4W

SISTEM INFORMASI GEOGRAFIS BANDARA YANG ADA DI INDONESIA Cara pembuatan mapserver dengan menggunakan pmapper 4.2.1 Untuk membuat mapserver kita harus mempunyai dulu pmapper disini saya menggunakan pmapper 4.2.1. Cara pertama untuk membuat mapserver simpan folder mapserver for window ( MS4W) di folder drive (mau di drive C, D, E dan seterusnya). Ingat jangan menyimpan MS4W di sub drive (di folder lain dalam drive) untuk lebih jelasnya lihat gambar dibawah ini : Pada gambar diatas MS4W disimpan pada folder D. setelah MS4W disimpan di folder D lalu buka folder tersebut dan buka folder Apache-bin-httpd seperti pada gambar dibawah ini sehingga muncul seperi koment prompt yang menunjukan bahwa apache mapserver telah aktif Catatan : ingat untuk menjalankan httdp semua database yang ada pada komputer kita harus dimatikan terlebih dahulu baik itu XAMPP, IIS, dan yang lainnya. Jika httpd diatas dijalankan maka akan muncul tampilan seperti ini. Setelah httpd tampil coba ...

Cara Menentukan Warna Tube dan Core Fiber Optic

Urutan Warna  fiber optic 1. Biru                              7. Merah 2. Orange                         8.Hitam 3. Hijau                              9. Kuning 4. cokelat                         10. Violet 5. Abu-abu                        11. Ping 6. Putih                              12. Tosca   Sesuai dengan standard TIA/EIA-598 yang dipakai secara internasional, digunakan 12 warna sebagai pengenal urutan, yaitu No urut Warna No Urut Warna 1 2 3 4 5 ...

Menampilkan Peta dari Database Mysql

Oke pada postingan kali ini saya akan coba berbagi ilmu bagaimana cara-cara menampilkan peta geometry (polygon) dari database MYSQL kedalam mapserver. Dari dulu kebanyakan kita mengenal cara pembuatan mapserver dengan menggunakan media peta dengan format peta .shp, nah sekaranga saya akan coba menjelaskan bagaiman kita membuat dan menampilkan peta yang diambil dari database. Apa sih keunggulan menampilkan peta dari database??? nah pertanyaan ini sangat berguna sekali. jawaban dari pertanyaan itu adalah, dengan menggunakan database maka peta yang kita buat akan menjadi peta yang dinamis, sehingga jika kita membuat pewarnaan peta berdasarkan data numerik maka pewarnaan itu akan menjadi dinamis sesuai dengan data yang diinput Nah langsung aja ke TKP. 1. untuk mengkonversi data Geometry kedalam database MySQL kita harus mendownload terlebih dahulu shp2MySQL download disini shp2mysql . kemudian extract file shp2Mysql kedalam direktori sesuai dengan direktori yang anda inginkan contoh D:s...