This project named “RFID BASED ATTENDANCE SYSTEM” is based on RFID as the name suggests. Here, our aim is to make a note of every employee entering the office and also to calculate the amount of time person resides in the office. Earlier, company used to enter the data in register and it was bit clumsy. Then it thought of going for barcode but barcode was not that much durable. Barcode requires continuous line of sight, low data capacity, cannot be rewritten etc due to this problems barcode cannot be used. So RFID is the perfect solution for this. It is quite easy to work with. Tags con be reconfigured if read/write tags are used. Range can be improved by using high frequency reader. It can also add security. By programming many other facilities can be added. Thus due to these advantages of RFID we have used it for attendance system
[header = What is RFID?]
RFID is short for Radio Frequency Identification. Generally a RFID system consists of 2 parts. A Reader, and one or more Transponders, also known as Tags. RFID systems evolved from barcode labels as a means to automatically identify and track products and people. You will be generally familiar with RFID systems as seen in:
Access Control: RFID Readers placed at entrances that require a person to pass their proximity card (RF tag) to be “read’ before the access can be made.
Contact less Payment Systems: RFID tags used to carry payment information. RFIDs are particular suited to electronic Toll collection systems.Tags attached to vehicles, or carried by people transmit payment information to a fixed reader attached to a Toll station. Payments are then routinely deducted from a users account, or information is changed directly on the RFID tag.
Product Tracking and Inventory Control: RFID systems are commonly used to track and record the movement of ordinary items such as library books, clothes, factory pallets, electrical goods and numerous items.
Shown below is a typical RFID system. In every RFID system the transponder Tags contain information. This information can be as little as a single binary bit , or be a large array of bits representing such things as an identity code, personal medical information, or literally any type of information that can be stored in digital binary format.
Shown is a RFID transceiver that communicates with a passive Tag. Passive tags have no power source of their own and instead derive power from the incident electromagnetic field. Commonly the heart of each tag is a microchip. When the Tag enters the generated RF field it is able to draw enough power from the field to access its internal memory and transmit its stored information. When the transponder Tag draws power in this way the resultant interaction of the RF fields causes the voltage at the transceiver antenna to drop in value. This effect is utilized by the Tag to communicate its information to the reader. The Tag is able to control the amount of power drawn from the field and by doing so it can modulate the voltage sensed at the Transceiver according to the bit pattern it wishes to transmit.
[header = Components of RFID]
A basic RFID system consist of three components:An antenna or coilA transceiver (with decoder)A transponder (RF tag) electronically programmed with unique information These are described below:
The antenna emits radio signals to activate the tag and read and write data to it. Antennas are the conduits between the tag and the transceiver, which controls the system’s data acquisition and communication. Antennas are available in a variety of shapes and sizes; they can be built into a door frame to receive tag data from persons or things passing through the door, or mounted on an interstate tollbooth to monitor traffic passing by on a freeway. The electromagnetic field produced by an antenna can be constantly present when multiple tags are expected continually. If constant interrogation is not required, a sensor device can activate the field.Often the antenna is packaged with the transceiver and decoder to become a reader (a.k.a. interrogator), which can be configured either as a handheld or a fixed-mount device. The reader emits radio waves in ranges of anywhere from one inch to 100 feet or more, depending upon its power output and the radio frequency used. When an RFID tag passes through the electromagnetic zone, it detects the reader’s activation signal. The reader decodes the data encoded in the tag’s integrated circuit (silicon chip) and the data is passed to the host computer for processing.
An RFID tag is comprised of a microchip containing identifying information and an antenna that transmits this data wirelessly to a reader. At its most basic, the chip will contain a serialized identifier, or license plate number, that uniquely identifies that item,similar to the way many bar codes are used today. A key difference, however is that RFID tags have a higher data capacity than their bar code counterparts. This increases the options for the type of information that can be encoded on the tag, including the manufacturer, batch or lot number, weight, ownership, destination and history (such as the temperature range to which an item has been exposed). In fact, an unlimited list of other types of information can be stored on RFID tags, depending on application needs. An RFID tag can be placed on individual items, cases or pallets for identification purposes, as well as on fixed assets such as trailers, containers, totes, etc.
Tags come in a variety of types, with a variety of capabilities. Key variables include:“Read-only” versus “read-write”
There are three options in terms of how data can be encoded on tags: (1) Read-only tags contain data such as a serialized tracking number, which is pre-written onto them by the tag manufacturer or distributor. These are generally the least expensive tags because they cannot have any additional information included as they move throughout the supply chain. Any updates to that information would have to be maintained in the application software that tracks SKU movement and activity. (2) “Write once” tags enable a user to write data to the tag one time in production or distribution processes. Again, this may include a serial number, but perhaps other data such as a lot or batch number. (3) Full “read-write” tags allow new data to be written to the tag as needed—and even written over the original data. Examples for the latter capability might include the time and dateof ownership transfer or updating the repair history of a fixed asset. While these are the most costly of the three tag types and are not practical for tracking inexpensive items, future standards for electronic product codes (EPC) appear to be headed in this direction.
Fig., RFID TAGS
The tag and antenna structure can come in a variety of physical form factors and can either be self-contained or embedded as part of a traditionallabel structure (i.e., the tag is inside what looks like a regular bar code label—this is termed a ‘Smart Label’) companies must choose the appropriate form factors for the tag very carefully and should expect to use multiple form factors to suit the tagging needs of different physical products and units of measure. For example, a pallet may have an RFID tag fitted only to an area of protected placement on the pallet itself. On the other hand, cartons on the pallet have RFID tags inside bar code labels that also provide operators human-readable information and a back-up should the tag fail or pass through non RFID-capable supply chain links.
“Passive RFID Tags” tags have no battery and “broadcast” their data only when energized by a reader. That means they must be actively polled to send information. “Active RFID Tags” tags are capable of broadcasting their data using their own battery power. In general, this means that the read ranges are much greater for active tags than they are for passive tags—perhaps a read range of 100 feet or more, versus 15 feet or less for most passive tags. The extra capability and read ranges of active tags, however, come with a cost; they are several times more expensive than passive tags. Today, active tags are much more likely to be used for high-value items or fixed assets such as trailers, where the cost is minimal compared to item value, and very long read ranges are required. Most traditional supply chain applications, such as the RFID-based tracking and compliance programs emerging in the consumer goods retail chain, will use the less expensive passive tags.
Like all wireless communications, there are a variety of frequencies or spectra through which RFID tags can communicate with readers. Again, there are trade-offs among cost, performance and application requirements. For instance, low-frequency tags are cheaper than ultra high-frequency (UHF) tags, use less power and are better able to penetrate non-metallic substances. They are ideal for scanning objects with high water content, such as fruit, at close range. UHF frequencies typically offer better range and can transfer data faster. But they use more power and are less likely to pass through some materials. UHF tags are typically best suited for use with or near wood, paper, cardboard or clothing products. Compared to low-frequency tags, UHF tags might be better for scanning boxes of goods as they pass through a bay door into a warehouse. While the tag requirements for compliance mandates may be narrowly defined, it is likely that a variety of tag types will be required to solve specific operational issues. You will want to work with a company that is very knowledgeable in tag and reader technology to appropriately identify the right mix of RFID technology for your environment and application.
EPC refers to “electronic product code,” an emerging specification for RFID tags, readers and business applications first developed at the Auto-IDCenter at the Massachusetts Institute of Technology. This organization has provided significant intellectual leadership toward the use and application of RFID technology. EPC represents a specific approach to item identification, including an emerging standard for the tags themselves, including both the data content of the tag and open wireless communication protocols. In a sense, the EPC movement is combining the data standards embodied in certain bar code specifications, such as the UPC or UCC-128 bar code standards, with the wireless datacommunication standards that have been developed by ANSI and other groups.
The RF transceiver is the source of the RF energy used to activate and power the passive RFID tags. The RF transceiver may be enclosed in the same cabinet as the reader or it may be a separate piece of equipment. When provided as a separate piece of equipment, the transceiver is commonly referred to as an RF module. The RF transceiver controls and modulates the radio frequencies that the antenna transmits and receives. The transceiver filters and amplifies the backscatter signal from a passive RFID tag.
[header = Block Diagram of RFID Attendance System]
Fig., BLOCK DIAGRAM
MICROCONTROLLER: Microcontroller is the heart of the system. We have used P89V51RD2. It is similar to 8051 microcontroller. It is made by Phillips. The P89V51RD2 is an 80C51 microcontroller with 64 kB Flash and 1024 bytes ofdata RAM.
First of all reader fetches 12 character from tag.This 12 characters are then sent to microcontroller via serial communication. In microcontroller the controller matches the received characters with the saved characters. If it matches green LED glows else red LED glows. Microcontroller is interfaced with LCD in order to display the received data.
POWER SUPPLY: for power supply an adapter is used. Adapter converts 230v to 5v.
LCD: 16 x 2 LCD is used. LCD has 16 pins. It can read or write data. Here wew use it for writing of data on it.
RTC: RTC stands for Real Time Clock. RTC used for timing calculation. Whenever a person enters, data from RTC is fetched and stored on microcontroller. When the person leaves the room again data is fetched.
EEPROM: as the memory inbuilt in microcontroller won’t be sufficient an extra EEPROM is attached. EEPROM (24C512) is attached. It has 512kb of memory. Around 2000 records can be saved
MATRIX KEYBOARD: 8 or 16 switch matrix keyboard is used in order to set RTC timing again and also to enter new data of user.
MAX232: MAX 232 IC is used. It is used as microcontroller and computer work on different logic level. Computer works on RS-232 level and microcontroller works on TTL level. So in order to have communication between two, a MAX232 IC is used. This IC brings RS-232 level to TTL level or TTL level to RS-232 level accordingly.
[header = Working of RFID Attendance System]
When a person with RFID tag or transponder enters in the range of RFID reader, the RF field induces voltage in the coils of tag. The range can be set by using the appropriate reader of appropriate frequency. This induced field supplies the voltage in case of passive tags and act as a battery in that case. If active tags are used then the case will be different as they have battery of their own. Due to interaction of Tag with Reader 12 characters from tag are sent to controller. This 12 characters are sent to controller via serial communication. Before this controller is loaded with a program. In controller data of employee are saved. In our case data’s of two employees are saved i.e. tag number and name. When we provide power supply to the circuit, the circuit switches on and “RFID BASED ATTENDANCE SYSTEM” is displayed on LCD.
When 12 characters are transferred to controller, the controller matches the characters with the saved characters. If the characters are matched then controller sends ‘1’ to green LED and time & date at time of entrance is fetched and stored.
If characters do not match with the saved characters, the controller sends ‘1’ to red LED and displays tag number along with a string “ERROR”.
This way it can be done number of times for different employees. Similarly there will be number of entries, valid or invalid.At the end of day, circuit can be connected to PC through RS232. And complete data is transferred to the computer on HYPERTERMINAL/TERATERM.
In order to enter entries of more number of employees an external EEPROM is attached. In our case 24C256 is used. It has 256 kb of ROM. So with the help of this 1000 records can be stored.
We have kept one tag for manager (ADMIN CARD) . This card when moved over the RFID reader will erase all the contents. So at the end of the day manager can use this card to empty all contents for the day. And from next day it can be repeated similarly.
[header= Components List and Explanation]
5.<span style=”font: 7pt “Tim
You may also like:
Project Source Code
Project Source Code
### #include
#include ###//0000 to 7FFF sbit RS = P0^7; sbit EN = P0^6; sbit SDA = P1^0; sbit SCL = P1^1; sbit RELAY = P1^2; code unsigned char RFID_1[] = "34006C9C04C0"; //34006C9C04+NULL code unsigned char RFID_2[] = "34006C549C90"; code unsigned char RFID_3[] = "1300F8FAC1D0"; code unsigned char RFID_4[] = "34006CD5AD20"; code unsigned char RFID_5[] = "420061231E1E"; code unsigned char name_1[] = "ROHIT SOLANKI"; code unsigned char name_2[] = "SHEKHAT HARSH"; code unsigned char name_3[] = "DHOLARIYA RAKSHIT"; code unsigned char name_4[] = "DIVYANG SHAH"; code unsigned char name_5[] = "ADMIN"; unsigned char rs[15]; unsigned int no_of_records; void delay() { int i; for(i=0;i<500;i++); } void long_delay() { unsigned int i; for(i=0;i<65000;i++); } void idelay() { unsigned int i; for(i=0;i<10000;i++); } void lcd_command(char lc) { P2 = lc; RS = 0; EN = 1; delay(); EN = 0; } void lcd_data(char ld) { P2 = ld; RS = 1; EN = 1; delay(); EN = 0; } void lcd_init() { lcd_command(0x38); lcd_command(0x0E); lcd_command(0x01); } void serial_init() { SCON = 0x50; TMOD = 0x20; TH1 = 0xFD; TR1 = 1; } void transmit(unsigned char tx) { SBUF = tx; while(TI==0); TI = 0; } void send_string(unsigned char *str) { int i; for(i=0;str[i]!='';i++) transmit(str[i]); } unsigned char receive() { char rx; while(RI==0); RI = 0; rx = SBUF; return(rx); } void lcd_string(char add,char *str) { int i; lcd_command(add); for(i=0;str[i]!='';i++) lcd_data(str[i]); } void start() { SDA = 1; SCL = 1; SDA = 0; } void stop() { SDA = 0; SCL = 1; SDA = 1; } void write(unsigned char w) { int i; SCL = 0; for(i=0;i<8;i++) { if((w & 0x80)==0) SDA = 0; else SDA = 1; SCL = 1; SCL = 0; w = w << 1; } SCL = 1; SCL = 0; } unsigned char read() { int i; unsigned char r = 0x00; SDA = 1; for(i=0;i<8;i++) { SCL = 1; r = r << 1; if(SDA == 1) r = r | 0x01; SCL = 0; } return(r); } void ack() { SDA = 0; SCL = 1; SCL = 0; } void nack() { SDA = 1; SCL = 1; SCL = 0; } void rtc_read() { unsigned char ss,mm,hh,day,mn,date,yr; start(); write(0xD0); write(0x00); stop(); start(); write(0xD1); ss = read(); ack(); mm = read(); ack(); hh = read(); ack(); day = read(); ack(); date = read(); ack(); mn = read(); ack(); yr = read(); nack(); stop(); rs[0] = hh/0x10 + 48; rs[1] = hh%0x10 + 48; rs[2] = ':'; rs[3] = mm/0x10 + 48; rs[4] = mm%0x10 + 48; rs[5] = ','; rs[6] = date/0x10 + 48; rs[7] = date%0x10 + 48; rs[8] = '/'; rs[9] = mn/0x10 + 48; rs[10] = mn%0x10 + 48; rs[11] = '/'; rs[12] = yr/0x10 + 48; rs[13] = yr%0x10 + 48; rs[14] = ''; } void rtc_init() { start(); write(0xD0); write(0x00); write(0x00); write(0x00); write(0x13); write(0x05); write(0x12); write(0x04); write(0x12); stop(); } void write_records(unsigned char *str); void read_records(); void main() { unsigned char rec_data[13],i,t; RELAY = 0; lcd_init(); serial_init(); rtc_init(); idelay(); start(); write(0xA0); write(0x7F); write(0xFF); stop(); start(); write(0xA1); no_of_records = read(); nack(); stop(); // no_of_records = 0; while(1) { start: lcd_command(0x01); lcd_string(0x80,"RFID ATTENDANCE"); lcd_string(0xC5,"SYSTEM"); i = 0; while(1) { if(RI==1) { RI = 0; t = receive(); if(t == '+') { read_records(); goto start; } else { rec_data[i] = t; for(i=1;i<12;i++) rec_data[i] = receive(); rec_data[i] = ''; break; } } } i = strcmp(RFID_1,rec_data); //match => i = 0 lcd_command(0x01); if(i==0) { RELAY = 1; lcd_string(0x80,name_1); rtc_read(); lcd_string(0xC0,rs); long_delay(); write_records(name_1); RELAY = 0; goto start; } // i = strcmp(RFID_2,rec_data); //match => i = 0 if(i==0) { RELAY = 1; lcd_string(0x80,name_2); rtc_read(); lcd_string(0xC0,rs); long_delay(); write_records(name_2); RELAY = 0; goto start; } // i = strcmp(RFID_3,rec_data); //match => i = 0 if(i==0) { RELAY = 1; lcd_string(0x80,name_3); rtc_read(); lcd_string(0xC0,rs); long_delay(); write_records(name_3); RELAY = 0; goto start; } i = strcmp(RFID_4,rec_data); //match => i = 0 if(i==0) { RELAY = 1; lcd_string(0x80,name_4); rtc_read(); lcd_string(0xC0,rs); long_delay(); write_records(name_4); RELAY = 0; goto start; } i = strcmp(RFID_5,rec_data); //match => i = 0 if(i==0) { RELAY = 1; lcd_string(0x80,name_5); no_of_records = 0; start(); write(0xA0); write(0x7F); write(0xFF); write(0x00); stop(); lcd_string(0xC0,"MEMORY CLEARED"); long_delay(); RELAY = 0; goto start; } lcd_string(0x80,"ERROR"); lcd_string(0xC0,rec_data); long_delay(); } }
Project Video
Filed Under: Electronic Projects
Filed Under: Electronic Projects
Questions related to this article?
👉Ask and discuss on EDAboard.com and Electro-Tech-Online.com forums.
Tell Us What You Think!!
You must be logged in to post a comment.