“fingerprint based bank locker security system · there are other methods of verifying...
TRANSCRIPT
A
Project Report
on
“FINGERPRINT BASED BANK LOCKER SECURITY SYSTEM”
Submitted by
Jeevan B. Sahu (45353)
Ajay S. Rathod (45141)
Chetan K. Patil (45136)
For the Degree of
Bachelor of Engineering
(Electronics & Telecommunication Engineering)
DR. BABASAHEB AMBEDKAR MARATHWADA UNIVERSITY,
AURANGABAD (M.S.)
Marathwada Shikshan Prasarak Mandal’s
Deogiri Institute of Engineering & Management Studies, Aurangabad
Department of Electronics & Telecommunication Engineering
Maharashtra state, India.
2018-2019
INDEX
Page No.
Abstract i
List of Abbreviations ii
List of Figure iii
List of Table iv
1. INTRODUCTION 1
1.1 Introduction 1
1.2 Necessity 1
1.3 Objectives 1
1.4 Theme 2
1.5 Organization 2
2. LITERATURE SURVEY 3
2.1 Existing System Overview 3
3. SYSTEM DEVELOPMENT 8
3.1 Proposed System Overview 8
3.2 Hardware Requirements 8
3.2.1 Arduino Nano AtMega328 8
3.2.2 Fingerprint Module R305 11
3.2.3 Servo Motor SG-90 12
3.2.4 Buzzer 13
3.2.5 Power Supply 13
3.2.6 LED 14
3.2.7 IR Sensor 14
3.3 Working of Proposed System 15
3.4 Software Requirement 17
3.4.1 Arduino IDE 17
3.5 System Flow 18
3.6 Hardware Schematic 19
4. PERFORMANCE ANALYSIS 21
4.1 Testing 21
4.2 Experimentation 23
4.2.1 Experimentation on Fingerprint Module 23
4.2.2 Experimentation on Arduino Nano 23
4.2.3 Experimentation on Servo Motor SG-90 23
4.2.4 Experimentation on IR Sensor 24
4.2.5 Experimentation on Buzzer 25
4.3 Results 26
5. CONCLUSION 29
5.1 Conclusion 29
5.2 Applications 29
5.3 Advantages 29
5.4 Future Scope 30
REFERENCES
APPENDIX-I
ACKNOWLEDGEMENT
i
ABSTRACT
As we are moving in a World of advancement, so the security is the major concern in
order to keep data isolate from the unauthorised users to access. In today’s World, we
need high degree security system for the protection of our document, important data,
Money as well as memory and jewellery. Our project presents a secure fingerprint locker
which is feasible. This system is proved successful on all norms of security of lockers.
There are other methods of verifying authentication through password, RFID but this
method is most efficient and reliable. To provide perfect security to the lockers and to
make the work easier, this project is taking help of two different technologies, i.e.
Embedded System and Biometrics. Biometrics is basically the measurement and use of
unique characteristics of living beings to make them distinguish from one another. And
this is more reliable then passwords and tokens which can be lost or stolen by the
humans.
ii
LIST OF ABBREVIATIONS
Abbreviations Illustration
SMS Short Memory Service
GPRS General Packet Radio Service
RPM Rotation Per Minute
RFID Radio Frequency Identification
IR Infra Red
GPIO General Purpose Input Output
LAN Local Area Network
ARM Advance Risk Machine
CPU Central processing Unit
ROM Read Only Memory
RAM Random Access Memory
dB Decibel
PA Public Address
LED Light Emitting Diodes
FP Fingerprint
iii
LIST OF FIGURES
Figure No. Name of Figure Page No.
3.1 Block Diagram of Proposed System 08
3.2 Arduino Nano 09
3.3 R305 11
3.4 SG 90 12
3.5 Buzzer 13
3.6 Power Supply 13
3.7 LED 14
3.8 IR Sensor 15
3.9 Working of Fingerprint Optical Scanner 17
3.10 Precautions to be taken while accessing FP Scanner 17
3.11 Flow chart 1 18
3.12 Flow chart 2 19
3.13 Hardware Schematic 20
3.14 Actual Model 20
4.1 Interfacing of servo motor 24
4.2 working of servo motor 24
4.3 connection of IR sensor with Arduino 25
iv
LIST OF TABLES
Table No. Name of Table Page No.
2.1 Survey on Reference Papers 07
4.1 Test Cases 21
1
1. INTRODUCTION
1.1 Introduction
We all know that the security is ours primary job in today world, but most human cannot find
the ways to provide security to their confidentially belonging manually. As today fingerprint
based system provides high degree of accuracy in terms security. Therefore, we have decided
to introduce a system for locking which is based on the Finger print scanning. Our project
will provide high degree of security with no manual flaws. Our project basically, is a
combination of Embedded Systems & Biometrics.
An Embedded system is a combination of computer hardware and software, i.e.
software is implemented on the hardware which has a key characteristic that it is dedicated
for the particular task. Design engineers optimized the size and characteristics of the
microcontrollers, the cost of the product also decreased which make it commercial. Basically,
embedded system is “Real Time Operating System” which provides output without delay. In
fingerprint locking system there is huge demand of high speed operating systems which is
fulfilled by embedded systems. This project includes fingerprint identification, in this we are
explaining the working of fingerprint module and it’s working.
1.2 Necessity
In this work we have explained about various bank lockers security systems. Present world
people are more concerned about the security of their belongings. It is not possible for us to
carry all our valuable stuffs every time. So the safest place for
placing these things is a bank locker. In recent trends many modem technologies are used to
keep bank locker safe. With the development of technology, solutions have been found to
overcome this issue.
Manual lockers are replaced by electronic gadgets such as motion sensor, RFID,GSM,
electronic nose etc. All these technologies have their own pros and cons.
1.3 Objective
Develop a locker system that can replace the current traditional methods such as manual
lock, PIN number and password.
Improve the security with automate locker system based on Biometric authentication.
Making the bank customers feel safe about their possessions in the safe.
2
Eliminating the need to remember multiple passwords, PINs and not carry identity proof
and keys.
Eliminate the frauds which are done by smart larceners.
Provide user friendly and easier system to banks to do their jobs efficiently.
Save the time by the process of withdrawal of possessions faster and ultimately make the
services pleasant for the bank customers.
1.4 Theme
The scope of the project is concentrated at two-factor authentication in order to access the
Bank locker system. The project is mainly focused on restricting the unauthorized access and
alerting in case of theft. The fingerprint biometric authentication and SMS alert system is
implemented. The accuracy of fingerprint scanner is depended on fingerprint sensor
specification. More accuracy of fingerprint sensor will provide strong fingerprint
authentication which cannot be forget. The GSM technology based SMS alert system for
authenticate users only, which shows time, date that is accessed. The project will have
software, hardware implementation and limitations.
1.5 Organization
Chapter 1:
Describe overall introduction of project. This existing methods of Bank Locker
Security System such as RFID based, Password based, OTP based and Key based lockers are
explained. Necessity of system is also mentioned with the drawback of the existing system in
the different aspects. Objective and theme of system is given in this chapter.
Chapter 2:
Describe existing and other proposed system overview.
Chapter 3:
Consist of block description of the system and design of circuit.
Chapter 4:
Consist of testing, analysis and results.
Chapter 5:
Consist of conclusion of system. Different application of system is given. Future
advancement is also explained in this chapter.
3
2. LITRATURE SURVEY
2.1 Existing System Overviews
Aditya Shankar et. al focused in this project on the replacement of conventional
techniques of locking system. They replaced the old methods like lock & key system and
password authentication system by the biometric system. They basically used fingerprints
for the authentication system, the person whose fingerprint saved in the database can
easily access the locker. They also provide an alarm system to alerting the neighbours if
an unauthorized person or thief tries to access the locker. To prove that person authorized
to open the locker door they need to scan their fingerprint images. The scanner is
interfaced to 8051 microcontroller; this controller will be controlling the scanning
process. They also provided a keypad for password after the fingerprint scanning. This
two step verification is for the double security. And a buzzer is provided for alarm in case
of unauthorized access of locker [1].
Omidiora E.O. et. al refused the traditional methods of locking system for the bikes,
they introduced finger print based locker which is the robust security mechanism in
various security domain. In their prototype software module is used for the database
storage of valid users and hardware is provided for the interfacing. Programming was
done with the help of Visual Basics, Visual C and Visual C++. The programming of this
prototype was done in Visual Basic 6.0 Enterprise Edition. The prototype was tested with
20 test images stored in the database. The implementation was successful and the
microcontroller was clearly differentiated between authorized and unauthorized users.
Logic 1 transferred for authorized user and logic 0 for unauthorized user [2].
Karthikeyan. A et. al told that every person has unique fingerprint. They added a
secured keypad for adding and deleting number of users from database which is very
good concept. FIM3030 fingerprint module by NITGEN is used in this purpose. For
controlling the whole driving unit Microcontroller AT89C52 is used. LCD is also
provided for showing the information about the authorized and unauthorized user.
Decoder DM742S138 is provided for data routing and for interfacing with fast memory
units as the decoder have short propagation delay. Latch 74HC373 is provided which is
high-speed Si-gate CMOS devices. A relay is used as an interfacing circuitry between the
microcontroller output and the ignition system of the car [3].
Pavithra .b.c et. al mainly focused in this project on security. They used R303A as a
scanner. This module has in-built ROM, DSP and RAM. The fingerprint module has a
4
capacity of storage 100 user’s fingerprint. This module operates in 2 modes they are
Master mode and User mode. Master mode is used to register the fingerprints which will
be stored in the ROM present on the scanner with a unique id. They provided a unique
identification number for the last step of verification, which provides three wrong
attempts.
They provide a digital code lock at every locker’s door, which is operated by the
password. The password included six mandatory numeric numbers without any character.
This locking system is interfaced with microcontroller for the password storage and
verification. This lock consists of a LCD screen, keyboard and a microcontroller 8051.
This can be implemented at every door locker because it is commercially available [4].
Crystalynne D.Cortez et. al focused on the development of microcontroller-based
biometric locker system with short message service. A 9-12Vdc was used to supply
power to the system. The microcontroller ATMEGA 644 housed in Arduino board was
utilized to interface the input and output hardware devices. Input devices include the
fingerprint sensor for biometric recognition, keypad was for the encoding of passcode and
real time clock for display of current date and time. The microcontroller is programmed
with the help of Arduino Integrated Development Environment. ATmega644 housed in
Arduino board, was the microcontroller unit used in the system. It controlled the
functions of the biometric locker system. The ATmega644 is a 40 pins, low-power
complementary metal oxide semiconductor (CMOS), 8-bit microcontroller based on the
AVR enhanced reduced instruction set computer (RISC) architecture. ATmega644 can
achieve throughputs approaching 1 million instructions per second per MHz through the
execution of powerful instructions in a single clock cycle. This allowed the optimization
of power consumption versus processing speed in system designs. It can store up to 64
KB of program instructions [5].
Smita s. Mudholkar et. al developed this project for the biometrics authentication
technique for Intrusion detection systems using Fingerprint recognition. Biometrics
makes the use of biological terms that deals with data statistically. It verifies uniqueness
by analysing his physical features or behaviours (e.g. face, fingerprint, voice, signature,
keystroke rhythms). The systems record data from the user and compare it each time the
user is claimed. A biometric system is a computer system that implements biometric
recognition algorithms. A typical biometric system consists of sensing, feature extraction,
and matching modules. They classified the biometric techniques into two classes:
5
Physiological based techniques include facial analysis, fingerprint, hand geometry, retinal
analysis, DNA and measure the physiological characteristics of a person. Behaviour
based techniques include signature, key stroke, voice, smell, sweat pores analysis and
measure behavioural characteristics.
Iris recognition is an automated method of biometric identification which uses
mathematical pattern recognition techniques on video images of the irises of an
individual's eyes, whose complex random patterns are unique and can be seen from some
distance. Iris cameras perform recognition detection of a person’s identity by analysis of
the random patterns that are visible within the iris of an eye from several distances [6].
Ms. ReetuAwasthi et. al. mainly focused in this project on the crime, fraud and threats
being central & all pervading, Security is indispensable. “The secret agent places his palm
on the grid panel as a thin red scans his entire hand from left to right. A mechanical
female voice chimes “Access granted”, “Biometrics is a technology that has been
glorified in movies, and comic books as a thing of science fiction and “James Bond”
styled security access systems. The origin of the word biometrics comes from the Greek
word “bios” which means life and “metros”, which means to measure. True to this
etymology, biometrics is the identification of an individual based on distinguishing
biological traits such as fingerprints, hand geometry, vascular patterns of a person’s palm,
retina and iris patterns, voice waves as well as DNA [7].
Sagar S. Palsodkar et. al proposed project for Bank lockers security system using
biometric and GSM. In our proposed system first the user will enrol his user name
password and his mobile number .then the camera of pc will automatically on and capture
the face store with face id then the person will put finger on finger print module finger
print will be scan and store with finger id . In this way user’s enrolment process will be
completed then user will perform login operation during login operation user face of
person will detect and finger print will be scan. if the id get matches LCD will show
mobile number of the user which entered during enrolment .then code will send to person
mobile through GSM. And user will punch the code through keypad if the code get match
then LED will be blink or lockers will be open. And LCD will show message access
granted. In their project, they used R305 finger print module. It is having FAR value is
<0.001% .and FRR value is <0.1%. This sensor is having Good image processing
capabilities, can successfully capture image up to resolution 500 dpi. ARM is a 16/32-bit
ARM7TDMI-S microcontroller in a tiny LQFP64package. It has 8 KB to 40 KB of on-
chip static RAM and 32 KB to 512 KB of on-chip. It offers high performance small size
6
low power. It is having two UART pin UART0AND UART1 from UART0 interface
through pc using serial cable. In their project they used SIM 300 GSM module. SIM300
is a Tri-band GSM/GPRS engine that works on frequencies EGSM 900 MHz, DCS 1800
MHz and PCS1900 MHz by this GSM code will come on user mobile [8].
Raghu Ram.Gangi et. al focused on the four step verification project. In this proposed
work, RFID reader reads the ID number from passive tag and sends to the
microcontroller, if the id number is valid then only it gives the access to the fingerprint
scanner otherwise it stops the process, if the fingerprint is matched then microcontroller
sends the password to the authenticated person mobile number then the authenticated
person enters the both passwords in the keyboard which was already given by the user
and received from the microcontroller. if these two passwords are matched then the locker
will be opened otherwise the microcontroller sends the warning message to the
authenticated person mobile number and it will be remain in locked position. RFID is an
effective automatic identification technology for variety of objects. The most important
functionality of RFID is the ability to track the location of the tagged item. Based on
power source, RFID tags can be classified into three major categories: active tags, passive
tags, and semi-passive (semi-active) tags. An active tag contains both a radio transceiver
and a battery that is used to power the transceiver. Active tags are more powerful than
passive tags/semi-passive tags. RFID tags can also be classified into two categories: tags
with read/write memory, and tags with read-only memory. The tags with read/write
memory are more expensive than the tags with read-only memory. RFID tags operate in
three frequency ranges: low frequency (LF, 30–500kHz), high frequency (HF, 10–
15MHz), and ultrahigh frequency (UHF, 850–950MHz, 2.4–2.5GHz, 5.8GHz).20 LF tags
are less affected by the presence of fluids or metals when compared to the higher
frequency tags [9].
7
Table 2.1: Survey on Reference Papers
S.
NO. PAPER
TECHNIQUES
OR
COMPONENTS
ADVANTAGES DISADVANTAGES
1. Aditya
Shankar etal
Biometrics,
8051
Microcontroller
No false
Intrusions
No Alarm system for
alerting the peoples.
2. Omidiora E.
O. etal
Biometrics,
Visual C,
Visual C++, Visual
Basic 6.0 Enterprise
Edition
Fingerprint
module used as
an additional
security feature in
the vehicle.
System was
efficiently
differentiating
between the
authentic and the
fake user.
Option of adding/
deleting user from the
memory is not given.
3. Karthikeyan.
A etal
Biometrics,
identification
number, digital
code lock, R303A
as a Scanner
Proposed good
system to
authenticate the
user with the
fingerprint
recognition.
Unsuccessful to
implement.
4. Pavithra.B.
C etal Biometrics
High accuracy in
terms of security.
Identification number
can guess easily.
5. Crystalynne
D.Cortezetal Biometrics
Unlock the locker
using fingerprint
or auto-generated
pass code.
No intruder detection
technique.
6.
Smita s.
Mudholkar
etal
Biometrics
All genuine users
could enroll their
fingerprint and
use a fingerprint-
based system.
It should have GSM
calling system.
7. Ms.Reetu
Awasthi etal
Biometrics,
fingerprint ARM,
GSM.
Less time delay,
Quick response
time.
It should have GSM
calling system.
8
3. SYSTEM DEVELOPMENT
3.1 Proposed System Overview
Finger print based security system can be used at many places like Industries, Offices
and Colleges or even at our home. This project is a fine combination of “Biometrics
technology” and “Embedded system technology”. Fingerprint sensor is the main part of
this system. It makes use of Biometric sensor to detect fingerprint. It is also called as
Biometric sensor. Fingerprint sensor uses various types of techniques like ultrasonic
method, optical method or thermal technique. In this project we have used optical
fingerprint sensor. Main blocks of this project are Microprocessor (Arduino Nano),
Fingerprint module (R305), Buzzer/Siren, Servo Motor (SG90). User has to place his/her
finger on the optical sensor part of fingerprint module. We have seen Password based
security system RFID based security system. The main feature or specialty of fingerprint
is that it is unique. It gives this project the high level security than other security systems.
Person recognition using the Fingerprint identification is used since a long time. Most
common example is use in the criminal cases.
Fig.3.1: Block Diagram of Proposed System
3.2 Hardware Requirement
3.2.1 Arduino Nano
MICROPROCESSOR
(ARDUINO NANO)
IR SENSOR BUZZER
LEDs
POWER
SUPPLY
FINGERPRINT
MODULE
(R305)
SERVO
MOTOR
(SG-90)
9
Selection Criteria:
a) Flash memory: Max. 32Kb
b) I/O Pins: 14
c) Less cost and less power requirement
d) High speed
e) Small in size
Specification of Arduino Nano:
Microcontroller Atmel ATmega328
Operating Voltage (logic level) 5 V
Input Voltage (recommended) 7-12 V
Flash Memory 32 KB (ATmega328) of which 2 KB used by bootloader
Input Voltage (limits) 6-20 V
Digital I/O Pins 14 (of which 6 provide PWM output)
Analog Input Pins 8
DC Current per I/O Pin 40 mA
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Clock Speed 16 MHz
Dimensions 0.73″ x 1.70″
Length 45 mm
Width 18 mm
Weigth 5g
Working:
The Arduino Nano has a number of facilities for communicating with a computer, another
Arduino, or other microcontrollers. The ATmega328 provide UART TTL (5V) serial
communication, which is available on digital pins 0 (RX) and 1 (TX). An FTDI FT232RL
on the board channels this serial communication over USB and the FTDI drivers
(included with the Arduino software) provide a virtual com port to software on the
computer. The Arduino software includes a serial monitor which allows simple textual
data to be sent to and from the Arduino board. The RX and TX LEDs on the board will
flash when data is being transmitted via the FTDI chip and USB connection to the
computer (but not for serial communication on pins 0 and 1). A Software Serial library
allows for serial communication on any of the Nano's digital pins. The ATmega328 also
Fig.3.2: Arduino Nano
10
support I2C (TWI) and SPI communication. The Arduino software includes a Wire
library to simplify use of the I2C bus. To use the SPI communication, please see
ATmega328 datasheet. Programming: The Arduino Nano can be programmed with the
Arduino software (download). Select "Arduino Duemilanove or Nano w/ ATmega328"
from the Tools > Board menu (according to the microcontroller on your board). The
ATmega328 on the Arduino Nano comes preburned with a bootloader that allows you to
upload new code to it without the use of an external hardware programmer. It
communicates using the original STK500 protocol. You can also bypass the bootloader
and program the microcontroller through the ICSP (In-Circuit Serial Programming)
header using Arduino ISP or similar. Automatic (Software) Reset: Rather than requiring a
physical press of the reset button before an upload, the Arduino Nano is designed in a
way that allows it to be reset by software running on a connected computer. One of the
hardware flow control lines (DTR) of the FT232RL is connected to the reset line of the
ATmega328 via a 100 nanofarad capacitor. When this line is asserted (taken low), the
reset line drops long enough to reset the chip. The Arduino software uses this capability
to allow you to upload code by simply pressing the upload button in the Arduino
environment. This means that the bootloader can have a shorter timeout, as the lowering
of DTR can be well-coordinated with the start of the upload. This setup has other
implications. When the Nano is connected to either a computer running Mac OS X or
Linux, it resets each time a connection is made to it from software (via USB). For the
following half-second or so, the bootloader is running on the Nano. While it is
programmed to ignore malformed data (i.e. anything besides an upload of new code), it
will intercept the first few bytes of data sent to the board after a connection is opened. If a
sketch running on the board receives one-time configuration or other data when it first
starts, make sure that the software with which it communicates waits a second after
opening the connection and before sending this data.
Input and Output: Each of the 14 digital pins on the Nano can be used as an input or
output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 5
volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up
resistor (disconnected by default) of 20-50 kOhms. In addition, some pins have
specialized functions:
Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data.
These pins are connected to the corresponding pins of the FTDI USB-to-TTL Serial
chip.
11
External Interrupts: 2 and 3. These pins can be configured to trigger an interrupt on a
low value, a rising or falling edge, or a change in value. See the attachInterrupt()
function for details.
PWM: 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output with the analogWrite()
function.
SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI comunicatn.
Which although provided by the underlying hardware, is not currently included in the
Arduino language.
LED: 13. There is a built-in LED connected to digital pin 13. When the pin is HIGH
value, the LED is on, when the pin is LOW, it's off. The Nano has 8 analog inputs, each
of which provide 10 bits of resolution (i.e. 1024 different values). By default they
measure from ground to 5 volts, though is it possible to change the upper end of their
range using the analogReference() function. Analog pins 6 and 7 cannot be used as digital
pins. Additionally, some pins have specialized functionality:
I2C: A4 (SDA) and A5 (SCL). Support I2C (TWI) communication using the Wire
library (documentation on the Wiring website).
There are a couple of other pins on the board:
AREF. Reference voltage for the analog inputs. Used with analogReference().
Reset. Bring this line LOW to reset the microcontroller. Typically used to add a reset
button to shields which block the one on the board.
The Arduino Nano is a small, complete, and breadboard-friendly board based on the
ATmega328P (Arduino Nano 3.x). It has more or less the same functionality of the
Arduino Duemilanove, but in a different package. It lacks only a DC power jack, and
works with a Mini-B USB cable instead of a standard one.
3.2.2 Fingerprint Module (R305)
Selection Criteria:
a) Optical fingerprint
b) Less cost
c) Storage of 1000 fingerprint
d) Inbuilt password security
e) Interfacing compatibility with Arduino
Specifications of Fingerprint Module R305:
Fingerprint sensor type: Optical
Resolution : 500 DPI
Fig.3.3: R305
12
Power : DC 3.6-6.0 V
Scanning Speed: < 0.5 sec
Storage capacity: 256
Working:
Fingerprint processing includes two parts, fingerprint enrolment and fingerprint matching
(the matching can be 1:1 or 1:N). When enrolling, user needs to enter the finger two
times. The system will process the two time finger images, generate a template of the
finger based on processing results and store the template. When matching, user enters the
finger through optical sensor and system will generate a template of the finger and
compare it with templates of the finger library.
For 1:1 matching, system will compare the live finger with specific template designated
in the Module; for 1:N matching, or searching, system will search the whole finger library
for the matching finger. In both circumstances, system will return the matching result,
success or failure.
3.2.3 Servo Motor (SG 90)
Selection Criteria:
a) Angular Accuracy (0o
and 90o)
b) Less in size
c) Interfacing capabilities with Arduino
d) High torque
Specification of Servo Motor (SG 90):
Weight: 9 g
Dimension: 22.2 x 11.8 x 31 mm approx.
Stall torque: 1.8 kgf·cm
Operating speed: 0.1 s/60 degree
Operating voltage: 4.8 V (~5V)
Dead band width: 10 μs
Temperature range: 0 ºC – 55 ºC
Working:
A servo consists of a Motor (DC or AC), a potentiometer, gear assembly and a controlling
circuit. First of all we use gear assembly to reduce RPM and to increase torque of motor.
Say at initial position of servo motor shaft, the position of the potentiometer knob is such
that there is no electrical signal generated at the output port of the potentiometer. Now an
Fig.3.4: SG 90
13
electrical signal is given to another input terminal of the error detector amplifier. Now
difference between these two signals, one comes from potentiometer and another comes
from other source, will be processed in feedback mechanism and output will be provided
in term of error signal. This error signal acts as the input for motor and motor starts
rotating. Now motor shaft is connected with potentiometer and as motor rotates so the
potentiometer and it will generate a signal. So as the potentiometer‟s angular position
changes, its output feedback signal changes. After sometime the position of potentiometer
reaches at a position that the output of potentiometer is same as external signal provided.
At this condition, there will be no output signal from the amplifier to the motor input as
there is no difference between external applied signal and the signal generated at
potentiometer, and in this situation motor stops rotating.
3.2.4 Buzzer
Specification of Buzzer:
Operating Temperature Range: - 20°C ~ + 105°C
Storage Temperature Range: - 40 °C ~ + 105°C
Operating Voltage: 3.0 to 30.0 VDC
Case material: PC UL 94HB
Oscillating Frequency 3.0 ± 0.5 KHz
Current Consumption 9.0 mA max
Sound Pressure Level Initial Value ± 10 dB
Working:
Piezoeletric buzzer is the handy sound generator used in electronic circuits to give audio
indication .It is widely used as alarm generator in electronic devices. It is available in
various types and size to suit the requirements. A Piezo buzzer has a Piezo disc and an
oscillator inside. When the buzzer is powered, the oscillator generates a frequency around
2-4 kHz and the Piezo element vibrates accordingly to produce the sound. An ordinary
Piezo buzzer works between 3–12 volts DC.
3.2.5 Power Supply
Specification of Power Supply:
Light, high efficiency AC switching design
AC Input: 100-240 VAC, 50 - 60 Hz
DC Output: 5V
Upto 2 A (2000 mA)
EMI filter included!
Fig.3.5: Buzzer
Fig.3.6: Power Supply
14
Standard US style 2 flat prong AC Plug
Female plug: 5.5 x 2.1mm x 10mm
Center pin positive
CEC/Energy Star compliant
UL/CUL/CE Approved
Model Number: CF1205-B
RoHS Compliant/WEEE Compliant: Yes
Working:
This is a high quality switching „wall wart‟ AC to DC 5V 2000mA Barrel Jack wall
power supply manufactured specifically for SparkFun Electronics. These are switch mode
power supplies which mean the output is regulated to 5V and the capable output current is
much higher (2000mA).
These wall adapters are perfect for supplying power to many single-board computers like
the pcDuino, Beaglebone Black, or the Raspberry Pi. Please note, this specific supply
(5V/2A) is also FCC/CE certified and works with 100-240VAC inputs and has a Center-
positive 5.5x2.1mm barrel connector.
3.2.6 LEDs (Light Emitting Diodes)
Specification of LED:
5 mm LED
140 degree viewing angle
Forward current max. 150mA
Power dissipation 0.5 watts
Voltage: 1.9v-2.6v
Typical: 2.1v
Current: 20mA
Working:
A light-emitting diode is a two-lead semiconductor light source. It is a p–n junction diode
that emits light when activated. When a suitable voltage is applied to the leads, electrons
are able to recombine with electron holes within the device, releasing energy in the form
of photons.
3.2.7 IR Sensor
Selection Criteria:
a) Good sensitivity for small distance
Fig.3.7: LED
15
b) Less power required
c) Cheaper in cost
d) Interfacing capabilities with Arduino
Specification of IR sensor:
5VDC Operating voltage
I/O pins are 5V and 3.3V compliant
Range: Up to 20cm
Adjustable Sensing range
Built-in Ambient Light Sensor
20mA supply current
Working:
An infrared sensor circuit is one of the basic and popular sensor module in an electronic
device. This sensor is analogous to human‟s visionary senses, which can be used to detect
obstacles and it is one of the common applications in real time. In this project the working
of IR sensor is to detect the door is closed or not.
The transmitter section includes an IR sensor, which transmits continuous IR rays to be
received by an IR receiver module. An IR output terminal of the receiver varies
depending upon its receiving of IR rays. Since this variation cannot be analysed as such,
therefore this output can be fed to a comparator circuit. Here an operational amplifier (op-
amp) is used as comparator circuit.
When the IR receiver does not receive a signal, the potential at the inverting input goes
higher than that non-inverting input of the comparator IC. Thus the output of the
comparator goes low, but the LED does not glow. When the IR receiver module receives
signal to the potential at the inverting input goes low. Thus the output of the comparator
goes high and the LED starts glowing. Resistor R1, R2 and R3are used to ensure that
minimum 10 mA current passes through the IR LED Devices like Photodiode and normal
LEDs respectively. Preset is used to set the sensitivity of the circuit.
3.3 Working of Proposed System
To operate this project first we have to operate this project in “Settings mode or Admin
mode”. In this mode we have to enter data into the database of finger print sensor, for this
we have to take impressions of fingerprints of that person whom we want to give access
to our security system. This can be done once or whenever a new entry has to be added in
the system. Then this project has to be used in “Normal mode or Search mode”. In this
Fig.3.8: IR Sensor
16
mode the system compares the fingerprint input received at its optical plate with the
previously stored fingerprint from its flash memory. If the entry matches with the
memory then it gives out ok signal along with the identity number of that person. But if
the entry does not match with the memory then it gives out error signal. The output receiv
ed from fingerprint sensor is given to the microcontroller. Microcontroller then compares
these output data. Function of microcontroller is to turn on the respective device dependin
g upon the input received. In case of OK signal from fingerprint module, microcontroller
turns on Relay and a Motor. However if the error output is received then it turns on the
Buzzer. And with help of GSM Technology we have to send alert SMS to the authorize
person who access their bank locker with his/her absence, Also gives notification like
how many time locker was accessed, with their respective time and dates.
What is Biometric:
Biometrics are automated methods of recognizing a person based on a physiological or
behavioural characteristic. Among the features measured are face, fingerprints, hand
geometry, handwriting, iris, retinal, vein, and voice. Biometric data are separate and
distinct from personal information. Biometric templates cannot be reverse-engineered to
recreate personal information and they cannot be stolen and used to access personal
information.
Using a unique, physical attribute of your body, such as your fingerprint or iris, to
effortlessly identify and verify that you are who you claim to be, is the best and easiest
solution in the market today. That is the simple truth and power of Biometrics
Technology today. Although biometric technology has been around for many years,
modern advances in this emerging technology, coupled with big reductions in cost, now
make biometrics readily available and affordable to consumers, small business owner,
larger corporations and public sector agencies alike.
How does fingerprint scanner works:
Fingerprint is a pattern made up of ridges and valleys on our fingertip skin. While storing
the entry in database, scanner takes an image of these patterns and stores in its own
memory. Then while performing search operation, it again takes pattern of fingerprint of
that user who needs to gain access. This pattern is compared with all patterns previously
stored in memory. In short it performs a task which is related to Digital image processing.
It performs various iterations and executes matching algorithms and if it finds exact
match then it gives out fingerprint ID number. Otherwise it gives out error signal.
17
A fingerprint scanner system has two basic jobs -- it needs to get an image of your finger,
and it needs to determine whether the pattern of ridges and valleys in this image matches the
pattern of ridges and valleys in pre-scanned images.
Only specific characteristics, which are unique to every fingerprint, are filtered and saved as
an encrypted biometric key or mathematical representation. No image of a fingerprint is ever
saved, only a series of numbers (a binary code), which is used for verification. The algorithm
cannot be reconverted to an image, so no one can duplicate your fingerprints.
3.3.3 Precautions to be taken while accessing Biometric fingerprint sensor:
3.4 Software Requirement
Arduino IDE: The Arduino integrated development environment (IDE) is a cross-platform
application (for Windows, macOS, Linux) that is written in the programming language Java.
It is used to write and upload programs to Arduino compatible boards, but also, with the help
of 3rd party cores, other vendor development boards.
The source code for the IDE is released under the GNU General Public License, version 2.
The Arduino IDE supports the languages C and C++ using special rules of code structuring.
Fig.3.9: Working of Fingerprint Optical Scanner
Fig.3.10: Precautions to be taken while accessing Biometric Fingerprint Optical Scanner
18
The Arduino IDE supplies a software library from the Wiring project, which provides many
common input and output procedures.
3.5 System Flow
In bank locker system for biometric fingerprint there are two cases:
Case 1: For an authorized user in the system the fingerprint template of a person if he/she is
given authority the fingerprint is stored in the flash memory and so he generates the ok signal
to servo motor to lock the door by 90o
rotation reverse of opening.
Case 2: For Unauthorized user when an unauthorized user tries to open the bank locker
system he/she keeps his finger on the biometric surface where the fingerprint is taken as
template it gets that an unauthorized user is trying to open it the alarm gets ON and the red
Led starts blinking with the buzzer.
Flow for Manager wants to Enrol/Register new user:
Start
Manager Put is finger on
module
Compare in
Database
Matched Unmatched
Person gets
Access Access
Declined
Fingerprint Module Ready
For Enroll New user
Enroll Successfully
End
Yes No
Template Stored in Database
Fig.3.11: Flow chart 1
19
3.6 Hardware Schematic
a. Fingerprint module R305
b. Arduino Nano
c. Servo Motor SG-90
d. Piezoelectric Buzzer
Start
End
Module always in Search mode
Given thumb is compare with stored
template in database.
After that this are send for comparison
Want to access own Locker
User put thumb on FP Sensor
Matched
Compare in
Database
Unmatched
The person
gets Access,
green led ON
The person
doesn’t gets
Access, the
Buzzer gets
ON also red
led ON
If
Matched
Servo Motor Rotates 90o
For unlock the door
After finished his/her work
Servo Motor Rotates 90o
For lock the door
IR Sensor Gives
feedback to Servo
motor the door is
closed
Fig.3.12: Flow chart 2
Flow for Search the already stored template for give access to use locker system:
21
4. PERFORMANCE ANALYSIS
4.1 Testing
Table 4.1 Test Cases
Test
Case
ID
Test Case
Name
Test Case
Description
Steps
Expected
Output
Actual
Output
TC1 Time In
/Time Out
When we get
the access and
we don’t open
the door then
time is out and
door is
automatically
closed.
1. Access is
granted door is
open.
2. Access is
granted but
door is not
opened by user.
Door is open
successfully.
User doesn’t
wanted to
open the
door.
TC2 Enroll
With the help of
admin /manager
user gets
enrolled their
fingerprint
template to their
bank locker.
1. Admin gives
his fingerprint
expression and
he matches with
store template
of manger.
2. User gets
enrolled their
fingerprint.
Should
Enrolled
template in
database
successfully.
Enrolled
template in
database
successfully.
TC3 Search
mode
When power
supply is given
circuit the
search mode is
always on in
finger print
module.
1. Input supply
is given to
circuit.
2. The search
mode is on.
Should
always in
loop of
searching
mode
continuously.
Always in
loop of
searching
mode
continuously.
22
TC4 Fingerpri
nt module
For security and
access of bank
locker system.
1. Already
stored template.
2. Compares
with the input
fingerprint.
3. If match
authorized user.
4. If unmatched
unauthorized
user.
1.Authorize
d person
gets access
and door
gets open.
2.
Unauthorize
d person
doesn’t get
access.
For authorized
user door is
open.
For
unauthorized
user door is
closed.
TC5 Servo
motor
Locking
mechanism for
locker
1. Input from
fingerprint
module when
input is
matched with
stored template.
2.When input is
not matched
with stored
template.
1. If
matches the
servo motor
rotates or
unlocks the
door.
2. If
unmatched
door
remains
closed.
Unlock
successfully.
Lock
successfully.
TC6 IR sensor
It provides
feedback to the
servo motor to
lock the door.
1.Unlock door
2. Lock door
IR
transceiver
sense
ambient
light.
If sense then it
provide
feedback to
servo motor to
rotate
anticlockwise.
If not remains
as it is.
TC7 LED and
BUZZER
For indication
and alert
message.
1. Authorized
user
2. Unauthorized
1. Green
Led and
Buzzer
should ON
1. Green led
and buzzer
gets ON.
2. Red led and
23
user for
authorized
user.
2. Red Led
and Buzzer
should ON
for
unauthorize
d user.
buzzer gets
ON.
4.2 Experimentation
4.2.1 Experimentation on Fingerprint Module
Give 5V DC supply to R305 module, if the LED in module will blink then the module’s
supply is OK .
If Module LED Blinked continually then there is loose connection in supply.
4.2.2 Experimentation on Arduino Nano
Connect Arduino nano to computer’s USB port. Then the in-built led is blink when it is
get the power supply by PC. Another way to test the Nano is working or not?
Program: // the setup function runs once when you press reset or power the board
void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
4.2.3 Experimentation on Servo Motor SG-90
Connect the following:
Servo motor(GND) to Arduino nano (GND)
Servo motor(VCC) to Arduino nano (VCC/+5v)
Servo motor(Data In) to Arduino nano (Digital Pin 2)
Arduino Nano to your laptop/pc
24
Code for Servo Motor Test:
#include <Servo.h>
Servo servo_pin_2;
void setup()
{
servo_pin_2.attach(2,530,2600); }
void loop()
{
servo_pin_2.write( 0 );
delay( 2000 );
servo_pin_2.write( 180 );
delay( 2000 );
servo_pin_2.write( 0 );
delay( 2000 );
servo_pin_2.write( 180 );
delay( 1000 );
}
4.2.4 Experimentation on IR Sensor
Make a connections:
Vcc to the power supply 3-5V DC;
Gnd to the ground reference;
Out for the digital output signal of the sensor i.e. Transceiver.
Code for IR sensor test:
#define IR 2 // digital pin input for ir sensor
int detection = HIGH; // no obstacle
int i = 0;
// array digital pin for: green led(3,4,5) - white led (6,7,8)- red led (9,10,11)
int LedPIN[] = {3, 4, 5, 6, 7, 8, 9, 10, 11};
Fig. 4.1 : Interfacing of servo motor
Fig.4.2 : working of servo motor
25
void setup() {
pinMode(IR, INPUT);
for(i = 0; i < 9; i++){
pinMode(LedPIN[i], OUTPUT);
}
}
void loop() {
detection = digitalRead(IR);
if(detection == LOW){
BlinkLED();
}
else{
LedOFF();
}
delay(1);
}
4.2.5 Experimentation on Buzzer
The Connections are pretty simple:
Connect the Supply wire (RED) of the buzzer to the Digital Pin 9 of the Arduino
through a 100 ohm resistor.
Connect the Ground wire (BLACK) of the buzzer to any Ground Pin on the Arduino.
That's all of it. Time to Code.
Note: The resistor is used in order to protect the board/micro-controller from any damage
due to the audio output device.
Code:
<p>const int buzzerPin = 9; // declaring the PWM pin</p><p>
void setup()
{
Serial.begin(8600);
pinMode(buzzerPin, OUTPUT); //addigning pin to Output mode</p><p>}</p><p>
void loop()
{
tone(buzzerPin, 50);
delay(50);
noTone(buzzerPin);
delay(100); } </p>
Fig.4.3 : connection of IR sensor with arduino
26
4.3 Result
Image shows all
hardware description
of fingerprint
module.
Step 1: When the
power supply is
given to the circuit.
The handshaking is
done in which shows
all the connections
are in proper
working.
Step 2: When the
power supply is
given to the circuit.
The fingerprint
module Always is in
Search mode.
Step 3: When
manager fingerprint
matches with stored
template in database.
Then Fingerprint
module is in enroll
loop.
27
Step 4: Enroll is
done successfully
and user gets access
to the bank locker.
Step 5: For
authorized user
opens his/her locker
by using his
fingerprint and it
matches with the
stored template and
door gets unlock.
Step 6: when locker
gets unlock user
does his work the
door remains open
till his work is done
and till user closes
the door.
Step 7: As soon as
user finishes his
work he closes the
door and door gets
lock automatically
by the feedback of
IR sensor.
28
Step 8: For
unauthorized user
the access gets
declined when he
tries to unlock the
locker.
Step 9: When
unauthorized user
place his/her finger
the alert system i.e.
buzzer beep and red
LED for indication
starts.
Step 10: If we place
finger of authorized
user and door gets
unlock but user
doesn’t opens the
door.
Step 11: The door
gets lock after five
seconds when no
activity is done.
29
5. CONCLUSION
5.1 Conclusion
Biometrics has undergone intense scrutiny and the results are in - when properly deployed,
biometrics work well and are safe, secure, and accurate.
The project took the revolution in the history of lockers, because this system overcome
limitation of traditional locking systems like locks & keys, password authentication, RFID
Card, etc. Because all the systems had some disadvantages like duplication of keys and
RFID Cards or hacking of passwords. But in biometric security system there is zero
possibility of duplication of fingerprints and DNA.
5.2 Applications
Bank Lockers or security safes: Many of the banks use key based or password based
locks for their lockers or safes. We can implement Fingerprint based bank locker system
using this project.
Industrial application: “Fingerprint-based security system” project can be used by the
employees, staff or workers in various industries like Automobile industries, manufacturing
industries, Software development companies.
Home or domestic application: This project can be used to automate the door locking
process at our home, so the user needs not to carry the door lock keys along with him, he
can just use his/her finger to open the door.
5.3 Advantages
Fingerprint based security system is the most secured system as compared to other
systems. Reason is that RFID card or Keys of lock can be stolen, password may be leaked.
However thumbnail of every human being is unique, so lock will not open unless the same
person is present to give the impression of fingerprint.
Smart Alert via SMS to user.
No need to carry the keys to open the lock. Or even there is no need to remember the
password or any Pin number.
One of the main advantages is that this system remembers the stored password even if the
power supply is turned off.
30
Scientific research and studies have proved that fingerprints do not change as you grow
up.
Using Fingerprint saves time to gain access as compared to other methods like RFID card,
Password or Key.
5.4 Future Scope
Use Single Fingerprint Scanner to access All the locker.
In addition to this the future scope of this project is to develop smart bank Locker security
system based on “FACE”, “IRIS and Retina” Scanning for visual identification of the
person.
REFERENCES
[1] A. Aditya Shankar, “Finger Print Based Door Locking System”, IJECS Volume 4
Issue 3 March, 2015 ISSN:2319-7242.
[2] Omidiora E. O.(2011) “A Prototype of a Fingerprint Based Ignition Systems in
Vehicles” Published in European Journal of Scientific Research ISSN 1450-216X
Vol.62 No.2 (2011), pp. 164-171 © EuroJournals Publishing, Inc. 2011.
[3] Karthikeyan.a “Fingerprint Based Ignition System” Published in Karthikeyan.a,
Sowndharya.j /International Journal of Computational Engineering Research /
ISSN: 2250–3005.
[4] Pavithra. b.c., “Fingerprint Based Bank Locker System Using Microcontroller”,
Proceedings of IRF International Conference, 05th April-2014, Pondicherry,
India, ISBN: 978-93-82702-71-9.
[5] Crystalynne D. Cortez, “Development of Microcontroller-Based Biometric Locker
System with Short Message Service” Lecture Notes on Software Engineering,
Vol. 4, No. 2, May 2016.
[6] Smita s. Mudholkaretal, “Biometrics Authentication Technique For Intrusion
Detection Systems Using Fingerprint Recognition”, International Journal of
Computer Science, Engineering and Information Technology (IJCSEIT), Vol.2,
No.1, February 2012.
[7] Ms. Reetu Awasthi, “A Study Of Biometrics Security System”, International
Journal Of Innovative Research & Development Page 737 www.Ijird.Com April,
2013 Vol. 2 Issue 4.
[8] Sagar S.Palsodkar, “Bank Lockers Security System using Biometric and GSM
Technology”, SSRG International Journal of Electronics and Communication
Engineering (SSRG-IJECE) – Volume 2 Issue 4–April 2015.
[9] Raghu Ram Gangi, “Locker Opening And Closing System Using Rfid,
Fingerprint, Password and GSM” International Journal of Emerging Trends &
Technology in Computer Science (IJETTCS, Volume 2, Issue 2, March – April
2013 ISSN 2278-6856.
[10] Anil k. Jain, Ling Hong, Sharath Pankanti, Ruud Bolle “An Identity-
Authentication System using Fingerprints” .IEEE Vol.85 No.9 September1997.
[11] Mary Lourde R and Dushyant Khosla, “Fingerprint Identification in Biometric
Security Systems”, International Journal of Computer and Electrical Engineering,
Vol. 2, No. 5, October,2010.
[12] A. O. Oke, A. A. Adigun, A. S. Falohun, and F. O. Alamu, “Development of a
programmable electronic digital code lock system,” International Journal of
Computer and Information Technology, vol.2, issue 1, pp. 127-131, January 2013.
[13] D. Matoni, D. Maio, A. K. Jain, and S. Prabhakar, Handbook of Fingerprint
Recognition, 2nd ed., London: Springer Verlay London Limited, 2009, ch. 2, pp.
57-58.
[14] http://tiny.cc/o3z15y
I Introduction
Power DC 3.6V-6.0V Interface UART(TTL logical level)/ USB 1.1
Working current Typical: 100mA Peak: 150mA
Matching Mode 1:1 and 1:N
Baud rate (9600*N)bps, N=1~12 (default N=6)
Character file size 256 bytes
Image acquiring time <0.5s Template size 512 bytes Storage capacity 256 Security level 5 (1, 2, 3, 4, 5(highest))FAR <0.001% FRR <0.1% Average searching time < 1s (1:1000) Window dimension 18mm*22mm
Temp: -10℃- +40℃ Temp: -40℃- +85℃ Working environment RH: 40%-85%
Storage environment RH: <85%
Split type Module: 32*23*7mm Sensor:56*20*21.5mm
Outline Dimention
Integral type 54.5*20.6*23.8mm
Operation Principle
Fingerprint processing includes two parts: fingerprint enrollment and fingerprint matching (the matching can be 1:1 or 1:N). When enrolling, user needs to enter the finger two times. The system will process the two time finger images, generate a template of the finger based on processing results and store the template. When matching, user enters the finger through optical sensor and system will generate a template of the finger and compare it with templates of the finger library. For 1:1 matching, system will compare the live finger with specific template designated in the Module; for 1:N matching, or searching, system will search the whole finger library for the matching finger. In both circumstances, system will return the matching result, success or failure.
- 1 -
R305F
Connecting with PC (P1/P2 on board)
Serial Communication(P1)
When the FP module communicates with user device, definition of J1 is as follows: Pin Nmuber Name Type Function Description
1 Vin in Power input 2 GND - Signal ground. Connected to power ground (color: black) 3 TD in Data output. TTL logical level 4 RD out Data input. TTL logical level
- 3 -
Hardware connection
Via serial interface, the Module may communicate with MCU of 3.3V or 5V power: TD (pin 3 of P1) connects with RXD (receiving pin of MCU), RD (pin 4 of P1) connects with TXD (transferring pin of MCU). Should the upper computer (PC) be in RS-232 mode, please add level converting circuit, like MAX232, between the Module and PC.
Serial communication protocol
The mode is semiduplex asychronism serial communication. And the default baud rate is 57600bps. User may set the baud rate in 9600~115200bps。 Transferring frame format is 10 bit: the low-level starting bit, 8-bit data with the LSB first, and an ending bit. There is no check bit.
Reset time
At power on, it takes about 500ms for initialization. During this period, the Module can’t accept commands for upper computer.
Electrical paramenter (All electrical level takes GND as reference)
Power supply Parameter
Item Min Typ Max
Unit Note
Power Voltage (Vin) 3.6 6.0 V Normal working value. Maximum Voltage (Vinmax)
-0.3 7.0 V Exceeding the Maximum rating may cause permant harm to the Module.
Operation Current (Icc)
90 100 110 mA
Peak Current (Ipeak) 150 mA
TD(output, TTL logic level) Parameter
Item Condition Min Typ Max
Unit Note
VOL IOL=-4mA 0.4 V Logic 0 VOH IOH= 4mA 2.4 3.3 V Logic 1
RD(input, TTL logic level) Parameter
Item Condition Min Typ Max
Unit Note
VIL 0.6 V Loigc 0
- 4 -
VIH 2.4 V Logic 1 VIH =5V 1 mA
IIH VIH =3.3V 30 uA
VImax -0.3 5.5 V Maximum input voltage
IV System Resources To address demands of different customer, Module system provides abundant resources at user’s use.
Notepad
The system sets aside a 512-bytes memory (16 pages* 32 bytes) for user’s notepad, where data requiring power-off protection can be stored. The host can access the page by instructions of PS_WriteNotepad and PS_Read Notepad. Note: when write on one page of the pad, the entire 32 bytes will be written in wholly covering the original contents.
Buffer
There are an image buffer and two 512-byte-character-file buffer within the RAM space of the module. Users can read & write any of the buffers by instructions. Note: Contents of the above buffers will be lost at power-off.
Image buffer
ImageBuffer serves for image storage and the image format is 256*288 pixels. When transferring through UART, to quicken speed, only the upper 4 bits of the pixel is transferred (that is 16 grey degrees). And two adjacent pixels of the same row will form a byte before the transferring. When uploaded to PC, the 16-grey-degree image will be extended to 256-grey-degree format. That’s 8-bit BMP format. When transferring through USB, the image is 8-bit pixel, that’s 256 grey degrees.
Character file buffer
Character file buffer, CharBuffer1, CharBuffer2, can be used to store both character file and template file.
4.3Fingerprint Library
Synstem sets aside a certain space within Flash for fingerprint template storage, that’s fingerprint library. Contents of the library remain at power off. Capacity of the library changes with the capacity of Flash, system will recognize the latter automatically. Fingerprint template’s storage in Flash is in sequential order. Assume the fingerprint capacity N, then the serial number of template in library is 0, 1, 2, 3 … N. User can only access library by template number.
- 5 -
System Confiuration Parameter
To facilitate user’s developing, Module opens part system parameters for use. And the basic instructions are SetSysPara & ReadSysPara. Both instructions take Parameter Number as parameter. When upper computer sends command to modify parameter, Module first responses with original configurations, then performs the parameter modification and writes configuration record into Flash. At the next startup, system will run with the new configurations.
Baud rate control (Parameter Number: 4)
The Parameter controls the UART communication speed of the Modul. Its value is an integer N, N= [1, 12]. Cooresponding baud rate is 9600*N bps。
Security Level (Parameter Number: 5)
The Parameter controls the matching threshold value of fingerprint searching and matching. Security level is divided into 5 grades, and cooresponding value is 1, 2, 3, 4, 5. At level 1, FAR is the highest and FRR is the lowest; however at level 5, FAR is the lowest and FRR is the highest.
Data package length (Parameter Number: 6)
The parameter decides the max length of the transferring data package when communicating with upper computer. Its value is 0, 1, 2, 3, corresponding to 32 bytes, 64 bytes, 128 bytes, 256 bytes respectively.
System status register
System status register indicates the current operation status of the Module. Its length is 1 word, and can be read via instruction ReadSysPara. Definition of the register is as follows:
Bit Num 15 4 3 2 1 0 Description Reserved ImgBufStat PWD Pass Busy
Note: Busy:1 bit. 1: system is executing commands; 0: system is free; Pass:1 bit. 1: find the matching finger; 0: wrong finger; PWD:1 bit. 1: Verified device’s handshaking password. ImgBufStat:1 bit. 1: image buffer contains valid image.
Module password
At power-on reset, system first checks whether the handshaking password has been modified. If not, system deems upper computer has no requirement of verifying password and will enter into normal operation mode. That’s, when Module password remains the default, verifying process can be jumped. The password length is 4 bytes, and its default factory value is 0FFH, 0FFH, 0FFH, 0FFH. Should the password have be modified, refer to instruction SetPwd, then Module (or device) handshaking password must be verified before the system enter into normal operation mode. Or else, system will refuse to execute and command.
- 6 -
The new modified password is stored in Flash and remains at power off.
Module address
Each module has an identifying address. When communicating with upper computer, each instruction/data is transferred in data package form, which contains the address item. Module system only responds to data package whose address item value is the same with its identifying address. The address length is 4 bytes, and its default factory value is 0xFFFFFFFF. User may modify the address via instruction SetAdder. The new modified address remains at power off.
Random number generator
Module integrates a hardware 32-bit random number generator (RNG) (without seed). Via instruction GetRandomCode, system will generate a random number and upload it.
V Communication Protocol The protocol defines the data exchanging format when ZFM-20 series communicates with upper computer. The protocol and instruction sets apples for both UART and USB communication mode. For PC, USB interface is strongly recommended to improve the exchanging speed, especially in fingerprint scanning device.
5.1Data package format
When communicating, the transferring and receiving of command/data/result are all wrapped in data package format. Data package format
Header Adder Package identifier
Package length
Package content (instuction/data/Parameter)
Checksum
Definition of Data package
Name Symbol Length Description
Header Start 2 bytes Fixed value of 0xEF01; High byte transferred first.
Adder ADDER 4 bytesDefault value is 0xFFFFFFFF, which can be modified by command. High byte transferred first and at wrong adder value, module will reject to transfer.
01H Command packet;
02H Data packet; Data packet shall not appear alone in executing processs, must follow command packet or acknowledge packet.
Package identifier
PID 1 byte
07H Acknowledge packet;
- 7 -
08H End of Data packet.
Package length
LENGTH 2 bytesRefers to the length of package content (command packets and data packets) plus the length of Checksum( 2 bytes). Unit is byte. Max length is 256 bytes. And high byte is transferred first.
Package contents
DATA - It can be commands, data, command’s parameters, acknowledge result, etc. (fingerprint character value, template are all deemed as data);
Checksum SUM 2 bytesThe arithmetic sum of package identifier, package length and all package contens. Overflowing bits are omitted. high byte is transferred first.
Check and acknowledgement of data package
Note: Commands shall only be sent from upper computer to the Module, and the Module acknowledges the commands.
Upon receipt of commands, Module will report the commands execution status and results to upper computer through acknowledge packet. Acknowledge packet has parameters and may also have following data packet. Upper computer can’t ascertain Module’s package receiving status or command execution results unless through acknowledge packet sent from Module. Acknowledge packet includes 1 byte confirmation code and maybe also the returned parameter. Confirmation code’s definition is : 00h: commad execution complete; 01h: error when receiving data package; 02h: no finger on the sensor; 03h: fail to enroll the finger; 06h: fail to generate character file due to the over-disorderly fingerprint image; 07h: fail to generate character file due to lackness of character point or over-smallness of fingerprint image 08h: finger doesn’t match; 09h: fail to find the matching finger; 0Ah: fail to combine the character files; 0Bh: addressing PageID is beyond the finger library; 0Ch: error when reading template from library or the template is invalid; 0Dh: error when uploading template; 0Eh: Module can’t receive the following data packages. 0Fh: error when uploading image; 10h: fail to delete the template; 11h: fail to clear finger library; 13h: wrong password! 15h: fail to generate the image for the lackness of valid primary image; 18h: error when writing flash; 19h: No definition error; 1Ah: invalid register number; 1Bh: incorrect configuration of register;
- 8 -
1Ch: wrong notepad page number; 1Dh: fail to operate the communication port; others: system reserved;
VI Module Instruction System
R303A series provide 23 instructions. Through combination of different instructions, application program may realize muti finger authentication functions. All commands/data are transferred in package format. Refer to 5.1 for the detailed information of package.
System-related instructions
Verify passwoard VfyPwd
Description: Verify Module’s handshaking password. (Refer to 4.6 for details) Input Parameter: PassWord (4 bytes) Return Parameter: Confirmation code (1 byte) Instruction code: 13H Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 4 byte 2 bytes Header Module
address Package identifier
Instruction code
Password Checksum
0xEF01 xxxx 01H 07H 13H PassWord sum Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes Header Module address Package
identifier Package Length
Confirmation code
Checksum
0xEF01 xxxx 07H 03H xxH sum Note: Confirmation code = 00H: Correct password;
Confirmation code = 01H: error when receiving package; Confirmation code = 13H: Wrong password;
Set password SetPwd
Description: Set Module’s handshaking password. (Refer to 4.6 for details) Input Parameter: PassWord (4 bytes) Return Parameter: Confirmation code (1 byte) Instruction code: 12H Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 4 byte 2 bytes Header Module
address Package identifier
Package length
Instruction code
Password Checksum
0xEF01 xxxx 01H 07H 12H PassWord sum
- 9 -
Acknowledge package format: 2 bytes 4 byte 2 bytes 1 byte 2 bytes Header Module address Package length Confirmation
code Checksum
0xEF01 xxxx 03H xxH Sum
Note: Confirmation code=00H: password setting complete; Confirmation code=01H: error when receiving package;
Set Module address SetAdder
Description: Set Module address. (Refer to 4.7 for adderss information) Input Parameter: None; Return Parameter: Confirmation code (1 byte) Instruction code: 15H Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 4 bytes 2 bytes Header Original
Module address Package identifier
Package length
Instruction code
New Module address
Checksum
0xEF01 xxxx 01H 07H 15H xxxx sum Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes Header New Module
address Package identifier
Package length
Confirmation code
Checksum
0xEF01 xxxx 07H 07H xxH Sum Note: Confirmation code=00H: address setting complete;
Confirmation code=01H: error when receiving package;
Set module system’s basic parameter SetSysPara
Description: Operation parameter settings. (Refer to 4.4 for more information) Input Parameter: Parameter number; Return Parameter: Confirmation code (1 byte) Instruction code: 0eH Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 1byte 1byte 2 bytes Header Module
address Package identifier
Package length
Instruction code
Parameter number
Contents Checksum
0xEF01 Xxxx 01H 05H 0eH 4/5/6 xx sum Acknowledge package format: 2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes Header Module
address Package identifier
Package length
Confirmation code
Checksum
0xEF01 Xxxx 07H 03H xxH Sum Note: Confirmation code=00H: parameter setting complete;
Confirmation code=01H: error when receiving package;
- 10 -
Arduino Nano (V2.3)
User Manual
Released under the Creative Commons Attribution Share-Alike 2.5 License
http://creativecommons.org/licenses/by-sa/2.5/
More information:
www.arduino.cc Rev. 2.3
Arduino Nano Pin Layout
!
D1/TX (1) (30) VIN D0/RX (2) (29) GND RESET (3) (28) RESET GND (4) (27) +5V D2 (5) (26) A0 D3 (6) (25) A1 D4 (7) (24) A2 D5 (8) (23) A3 D6 (9) (22) A4 D7 (10) (21) A5 D8 (11) (20) A6 D9 (12) (19) A7 D10 (13) (18) AREF D11 (14) (17) 3V3 D12 (15) (16) D13
Pin No. Name Type Description 1-2, 5-16 D0-D13 I/O Digital input/output port 0 to 13
3, 28 RESET Input Reset (active low) 4, 29 GND PWR Supply ground
17 3V3 Output +3.3V output (from FTDI) 18 AREF Input ADC reference
19-26 A7-A0 Input Analog input channel 0 to 7 27 +5V Output or
Input +5V output (from on-board regulator) or +5V (input from external power supply)
30 VIN PWR Supply voltage
!!!!!!
Arduino Nano Bill of Material Item!Number! Qty.! Ref.!Dest.! Description! Mfg.!P/N! MFG! Vendor!P/N! Vendor!
1! 5! C1,C3,C4,C7,C9!Capacitor,!0.1uF!50V!10%!Ceramic!X7R!0805! C0805C104K5RACTU! Kemet! 80"C0805C104K5R! Mouser!
2! 3! C2,C8,C10!Capacitor,!4.7uF!10V!10%!Tantalum!Case!A! T491A475K010AT! Kemet! 80"T491A475K010! Mouser!
3! 2! C5,C6!Capacitor,!18pF!50V!5%!Ceramic!NOP/COG!0805! C0805C180J5GACTU! Kemet! 80"C0805C180J5G! Mouser!
4! 1! D1! Diode,!Schottky!0.5A!20V! MBR0520LT1G! ONSemi! 863"MBR0520LT1G! Mouser!5! 1! J1,J2! Headers,!36PS!1!Row! 68000"136HLF! FCI! 649"68000"136HLF! Mouser!
6! 1! J4!Connector,!Mini"B!Recept!Rt.!Angle! 67503"1020! Molex! 538"67503"1020! Mouser!
7! 1! J5! Headers,!72PS!2!Rows! 67996"272HLF! FCI! 649"67996"272HLF! Mouser!
8! 1! LD1!
LED,!Super!Bright!RED!100mcd!640nm!120degree!0805! APT2012SRCPRV! Kingbright! 604"APT2012SRCPRV! Mouser!
9! 1! LD2!
LED,!Super!Bright!GREEN!50mcd!570nm!110degree!0805! APHCM2012CGCK"F01! Kingbright! 604"APHCM2012CGCK! Mouser!
10! 1! LD3!
LED,!Super!Bright!ORANGE!160mcd!601nm!110degree!0805! APHCM2012SECK"F01! Kingbright! 04"APHCM2012SECK! Mouser!
11! 1! LD4!
LED,!Super!Bright!BLUE!80mcd!470nm!110degree!0805! LTST"C170TBKT! Lite"On!Inc! 160"1579"1"ND! Digikey!
12! 1! R1!Resistor!Pack,!1K!+/"5%!62.5mW!4RES!SMD! YC164"JR"071KL! Yageo! YC164J"1.0KCT"ND! Digikey!
13! 1! R2!Resistor!Pack,!680!+/"5%!62.5mW!4RES!SMD! YC164"JR"07680RL! Yageo! YC164J"680CT"ND! Digikey!
14! 1! SW1!Switch,!Momentary!Tact!SPST!150gf!3.0x2.5mm! B3U"1000P! Omron! SW1020CT"ND! Digikey!
15! 1! U1!
IC,!Microcontroller!RISC!16kB!Flash,!0.5kB!EEPROM,!23!I/O!Pins! ATmega168"20AU! Atmel! 556"ATMEGA168"20AU! Mouser!
16! 1! U2!IC,!USB!to!SERIAL!UART!28!Pins!SSOP! FT232RL! FTDI! 895"FT232RL! Mouser!
17! 1! U3!IC,!Voltage!regulator!5V,!500mA!SOT"223! UA78M05CDCYRG3! TI! 595"UA78M05CDCYRG3! Mouser!
18! 1! Y1!Cystal,!16MHz!+/"20ppm!HC"49/US!Low!Profile! ABL"16.000MHZ"B2! Abracon! 815"ABL"16"B2! Mouser!
SERVO MOTOR SG90 DATA SHEET
Tiny and lightweight with high output power. Servo can rotate approximately 180 degrees (90 in each direction), and works just like the standard kinds but smaller. You can use any servo code, hardware or library to control these servos. Good for beginners who want to make stuff move without building a motor controller with feedback & gear box, especially since it will fit in small places. It comes with a 3 horns (arms) and hardware.
Position "0" (1.5 ms pulse) is middle, "90" (~2ms pulse) is middle, is all the way to the right, "-90" (~1ms pulse) is all the way to the left.
Silicon TechnoLabs IR Proximity Sensor
Product Datasheet www.silicontechnolabs.in 1
IR Proximity Sensor
Silicon TechnoLabs IR Proximity Sensor
Product Datasheet www.silicontechnolabs.in 2
1. Descriptions
The Multipurpose Infrared Sensor is an add-on for your line follower robot and obstacle avoiding robot that gives your robot the ability to detect lines or nearby objects. The sensor works by detecting reflected light coming from its own infrared LED. By measuring the
amount of reflected infrared light, it can detect light or dark (lines) or even objects directly in
front of it. An onboard RED LED is used to indicate the presence of an object or detect line. Sensing range is adjustable with inbuilt variable resistor.
The sensor has a 3-pin header which connects to the microcontroller board or Arduino board via female to female or female to male jumper wires. A mounting hole for easily
connect one or more sensor to the front or back of your robot chassis.
2. Features
5VDC operating voltage.
I/O pins are 5V and 3.3V compliant.
Range: Up to 20cm.
Adjustable Sensing range.
Built-in Ambient Light Sensor.
20mA supply current.
Mounting hole.
3. Specifications
Size: 50 x 20 x 10 mm (L x B x H)
Hole size: φ2.5mm
4. Schematics