Design and Implementation of Smart Attendance System Based On Raspberry Pi
Design and Implementation of Smart Attendance System Based On Raspberry Pi
Raspberry pi
Abstract
The attendance system proposed is used to manage attendance system in large and branched factory or
university from central unit. It consists of terminal units and a central unit. Each terminal unit consists of
Raspberry pi, screen GUI, RFID, transponder card with each user (like student) and GSM board. The central
unit consists of Arduino, GSM board and a computer. Each unit has a special program to achieve its purpose.
The terminal unit is responsible of making a connection with a transponder card to bring its ID's and make a
comparison with the names listed in the database of SQL server to get the names of the absent students and
send their serial numbers by using GSM message. The central unit is considered as a heart of system where it
is responsible of collecting all the information from the terminal units, displaying them and making special
processing to take a decision about persons whose absence exceed the threshold line. Keywords: Attendance
system, RFID, GSM, Raspberry pi, Arduino
1. Introduction
Successful schools tend to make sure that their students come to school regularly. The consequences of low
attendance of students are serious and they affect the community. The classical way of taking attendance by
saying students names or by paper indicating causes time consumption, insecurity, and inefficiency. The
attendance system depending on Radio Frequency Identification technology is one of the tools to solve this
trouble. This system is used at universities, school, and business sites. Several studies is published in this field
for improving and replacing the classical method of taking attendance by RFID technology. The principle
operation of RFID depends on tagging objects to identify them. The RFID technique gives several benefits
over classical method of taking attendance in class whereas the system is able to uniquely identify each
person depending on their RFID tag, so that the operation of taking the attendance is easier, faster, and more
secure comparing with classical method. The real time clock attendance taken will be more accurate
(Karthikeyan et.al., 2013).
RFID is a data collection technique which collects information by using data of radio frequency that
communicates between a mobile tag and the reader to recognize, classify and track them. There are many
different applications for RFID systems like tracking of product through industrialization and assembly,
controlling of inventory,
Journal of Babylon University/Engineering Sciences/ No.(5)/ Vol.(25): 2017 1611 parking lot access and
control, searching of equipment in hospitals, searching of container, etc. The RFID system consists of tags
with antenna, Reader with antenna, Middleware, and backend or stored database. The tag includes a chip
which stores a special series identifier that is utilized to identify the things individually. The tag can be
indicate the object from multi meters distance and in front of the RFID reader. RFID tags have three kinds
which are active, passive, and semi-passive tag. The active tag is that which does not require external source,
it has battery source built in it, the passive tag is that which is initiated by the reader, it does not has battery
source built in it, and the semi passive tags have the properties of both of them. The RFID reader is a system
which transmits a pulse of radio signals to the RFID tag and waits for the response of the tag. The RFID tag
senses these signals and transmits a response which includes sequence number of tag and remaining data.
The tag sends these data to the Middleware for additional operation. The middleware is a connection part
that provides interfacing needed for controlling of the data flowing from the reader and for transmitting of
the data in an efficient manner to the stored database management systems. The data came from the tag can
be filtered, converted, and corrected by using software (middleware). The antenna is medium which provides
communications between the reader and the tag. The database deals with the collection of data, and storage
of reader data recording. Figure (1) below shows the RFID system components (Ankita et.al., 2013; Arulogun
et.al., 2013).
GSM is an international standard for mobile communication used for transmitting voice of mobile and
services of massages. It is evolved to make use of the same subscriber parts or mobile phone units throughout
the world. A modem of GSM is a specified kind of modems that has a Subscriber Identity Module card (SIM
card), and works over a subscription to mobile operator, such as mobile phone. Time Division Multiple Access
technology has been used to send the signals where various calls (signals) can use the same carrier (Pallavi
et.al., 2013; Zatin et.al., 2012). A GSM network is made up of various components and interfaces which
simplify signal transmitting and receiving and messages of traffic. It is transceivers collection, registers
controllers, routers, and switches. The Mobile Station (MS) consists of two components which are Mobile
Equipment (ME) which is the phone hardware and the SIM card as it is shown in Figure (2) below (Pallavi
et.al., 2013; Zatin et.al., 2012).
Fig 2 : SIM 900 GSM Shield (Zatin et.al., 2012).
The Raspberry Pi is a general purpose computing device that transforms an engineering concept to an
actual interacting electronics module. It can be utilized for applications of embedded systems and for
particular applications of Internet-attached embedded. Raspberry Pi is utilized to introduce learners to
programming of computer and general computing because the models of it are able to general purpose
computing devices. The Raspberry Pi 3 platform board is illustrated in Figure (3) below (Derek Molloy,
2016).
The Raspberry Pi platform can run the Linux operating system. which means that many libraries and
applications of opened source software can be used directly with it. The availability of drivers of opened
source software makes the raspberry pi interfaced with devices such as keyboard, camera with USB, and
adapter of WiFi, without having to source proprietary alternatives (Derek , 2016). The functionality of
recent Raspberry Pi models can be extended with daughter boards which is the Hardware Attached on
Top (HATs), that are connected to the GPIO pins which are 40 pins (rows of dual pin connectors in the
platform in Figure 3). The HATs can be designed and attached securely to the raspberry pi using this
header (Derek, 2016). Journal of Babylon University/Engineering Sciences/ No.(5)/ Vol.(25): 2017 1613
Raspberry pi MySQL Data Database for students RFID Reader 1 Screen GUI User Interface Power supply
GSM modem Antenna Arduino Antenna Central Computer MySQL Data RFID Cards 2 3 GSM modem On
the other side , the Arduino is also an open source hardware prototyping board confirmed by
environment of open source software. The Arduino was appeared in 2005 to make the software and
hardware easy to be used and available to all users (Charles , 2013).
The system proposed in this paper is based on the use of Raspberry pi3 model (B V1.2) and Arduino UNO
for hardware implementation of attendance system using RFIDRC522. The proposed attendance system
is demonstrated in the block diagram in Figure (4) below . It consists of terminal units and base station
unit. Each terminal unit includes RFID unit, control unit and communication unit. The RFID unit consists
of tags and reader. The tags is carried by the users or students, each tag has a unique ID, the reader will
send an issue to each tag present in the reading range of the reader, so it is responsible for getting
information and sending it to the control unit. The control unit consists of Raspberry pi and screen GUI
user interface. This unit is responsible for receiving the information (IDs) from the RFID unit and making
all processing needed to the attendance system.
Journal of Babylon University/Engineering Sciences/ No.(5)/ Vol.(25): 2017 1614 A database of all the
students names and their serial numbers has been built by using SQL server in the Linux operating
system. The control unit makes a comparison between the received IDs and the IDs stored in the
database of SQL server. The GSM unit is used as communication unit which is responsible for sending
and receiving the coded information from all rooms of classes to the base station in order to give the
overall indication about the attendance in the college or university. Figure (5) below shows the
experimental system of the block diagram shown in Figure (4). RFID and Raspberry pi with GUI screen
are used at each room or class to take the attendance of the students. A database of all the students ID's
was built by using SQL server in Linux operation system. The system brings the IDs of the students and
makes a comparison with the names listed in the database to get the absent names and send those
serial numbers (IDs) via GSM message to the base station to be summarized.
The system operation can be summarized by five steps. The first step: when the student puts its tag near the
reader, the reader will send the tag an issue in order to get its ID's. The second step is that the tag receives the
issue and sends its ID's to the Reader which is connected with the Raspberry pi. The third step was represented by
sending all received IDs to the control unit (Raspberry pi). The Raspberry pi makes a comparison with the names
listed in the SQL database to get the absent names. The fourth step represented by sending the IDs of the absent
students to the central unit (Arduino and GSM shield). The final step represented by receiving the information
from all the terminals units to save these information and take a decision about the states of the students.
Journal of Babylon University/Engineering Sciences/ No.(5)/ Vol.(25): 2017 1615 The practical
connections of raspberry pi with RFID and GSM shield are demonstrated in Figure (6) below. The
Raspberry pi can be programmed by using a high level programming language which is the open source
python language. The raspberry pi needs an operating system to startup, Linux operating system is more
suitable for Raspberry pi . A blank SD card is needed to flash the Linux operating system onto the card.
After that, the internet is connected to the Raspberry pi in order to download the required libraries.
Mouse and Keyboard are also utilized with the Raspberry pi which are needed to work with the
operating system and hence the raspberry pi can be programed.
Fig 6 : Connection of raspberry pi with RFID and GSM
The practical connection of GSM shield with the Arduino and computer is shown in Figure (7) below. The
Arduino is connected to the computer via serial port , it is used to process the data coming from the
GSM shield
The Arduino UNO supports a number of digital and analog pins which is used to connect the Arduino
with the real world including devices and sensors. The processor of Journal of Babylon
University/Engineering Sciences/ No.(5)/ Vol.(25): 2017 1616 the Arduino UNO is the Atmel MCU
(ATmega328). The Arduino UNO contains the ATmega328 MCU and this platform is the open source
platform which is easy to be used in terms of software and hardware as it is shown in Figure (8).