Internship Report
Internship Report
Internship Report
CHAPTER 1
INTRODUCTION
This report is a short description of my internship carried out as a compulsory component
of the B.E. Electronics and Communication. The internship was carried out within the
organization “LOGINWARE SOFTEC PRIVATE Ltd”. Through this process I was able to
learn a wide range of topics and was able to acquire variety of skillsets. At the beginning of
the internship, I formulated several learning goals, which I wanted to achieve:
This internship report contains my activities that have contributed to achieve a number of
my stated goals. The following chapters describe the work carried out at LOGINWARE
SOFTTEC PVT Ltd.
CHAPTER 2
ABOUT COMPANY
Loginware softtec Private Limited is a private basically a service and product oriented
Embedded Technologies Company established with an intension to provide valued service
for esteemed customers and delivering service on time along with introducing new quality
products in market at nominal rate. It is a knowledge-driven company that values cutting edge
technology practices and provides comprehensive solutions to help our customers achieve
their goals.
2.1 Introduction
Loginware is changing the world by changing the way knowledge can be shared.
Software and hardware solutions empowers knowledge seekers to come together to explore
and expand on ideas. Loginware Softtec Pvt Ltd is a proactive player covering the full
spectrum of software services, from design, development, implementation, validation,
support and corporate training.
The primary purpose of this company will be to utilize a carefully designed and
integrated set of training programs, entrepreneurship development components, cooperative
concepts and technology services to select and train individuals of tier II and tier III cities to
become new generation skilled workers cum entrepreneurs and community builders.
The programs carried out in Loginware will attract, screen, motive, prepare and assist
individuals of tier II and tier III cities to effectively utilize the new generation technology.
Loginware is the one stop partner for all the technology needs of tier II and tier III cities.
An in-depth knowledge of various technology areas enables us to provide end to end solutions
and services. With our 'Web of Participation', we maximize the benefits of our depth, diversity
and delivery capability, ensuring adaptability to individual needs, and thus bringing out the
most innovative solutions in every business and technology domain.
Knowing the importance of skilled trainers in the industry company do offer Industrial
Training for the interested persons and train them with utmost knowledge and latest skill and
making them confident enough to face the challenges of the IT world. Communication and
Networking Regardless of the mission, having the right information at the right time is
critical.
The company communications solutions help to stay connected and informed whether
in flight or on the battle field. The company communication and networking systems enable
to connect when it counts anywhere in the world. The company not only designs the online
web but also do online web design and development adding various features of multimedia
technology into it and come up with the best and unique low-cost outcome at very short
duration of time.
CIN U72200KA2016PTC094019
RoC RoC-Bangalore
Private
10 June 2016
PURPOSE:
To become a leader in the software Industry by providing enhanced services, relationship and
profitability.
VISION:
To provide quality services that exceeds the expectations of their esteemed customers.
MISSION:
To build long term relationships with customers and clients and provide exceptional customer
services by pursuing business through innovation and advanced technology.
CORE VALUES :
• Integrate honesty, integrity and business ethics into all aspects of our business
functioning.
• EDUCATION
They have extended their Arms into the field of Education and brought a revolutionary change
in the field by launching various software projects which are suitable in the educational
institutes in various aspects such as student data base management, attendance and library
management system including server maintenance.
• IT
With the emerging Information technology provides related and necessary services in the field
of IT.
• GOVERNMENT
They have tied up with many Government and Non-Government organization and fulfill all
the Software and Hardware demands efficiently.
• OUTSOURCING
They outsource many projects to their associated companies and have built a very good
network among the companies.
• HR Management
They have a separate HR department for training and Recruiting Purpose and offer HR
management skills for the needed.
2.7 Objective
The primary purpose of this company will be to utilize a carefully designed and
integrated set of training programs, entrepreneurship development components, cooperative
concepts and technology services to select and train individuals of tier II and tier III cities to
become new generation skilled workers cum entrepreneurs and community builders. The
programs carried out in Loginware will attract, screen, motive, prepare and assist individuals
of tier II and tier III cities to effectively utilize the new generation technology.
CHAPTER 3
DEPARTMENTS
Loginware IOT group: Loginware Softtec Pvt Ltd aims to provide real time IOT Solutions.
We work with core technologies that deals with the edge devices and connectivity and going
all the way up to the cloud. Loginware has focus on healthcare, home automation and
education. “We are at the very beginning of the Internet of Everything. An Intelligent world
pulsing with unprecedented processing power and productivity.”
• Embedded System
• Artificial Intelligence
Loginware Artificial intelligence group: AI enables to create intelligent machines that think,
react and perform tasks like humans. With enhanced AI capabilities, new age machines are
equipped to find answers to business challenges with high precision and at lightning-fast
speed. AI comes with an unprecedented capability that encompasses everything from real-
time customer interaction to virtual predictive and diagnostic applications. Many businesses
across the globe are adopting artificial intelligence technology in a bid to increase operational
efficiency, grow revenue, reduce operational costs and enhance customer experience.
• System Software
Loginware System Software group: System software is a type of computer program that is
designed to run a computer's hardware and application programs. If we think of the computer
system as a layered model, the system software is the interface between the hardware and
user applications. Offers wide expertise in developing Board Support Package, firmware,
Device Drivers, Middleware components, Application on various hardware platforms.
• Machine Learning
Loginware Machine Learning group: Machine learning (ML) is the study of statistical
methods and algorithms used by computers in order to perform a task without explicitly being
told. The ‘learning’ part means that the computer tries to find patterns in the data it’s provided
with. The way it learns is through algorithms we devise. Machine learning is closely related
to artificial intelligence. In fact, it can be seen as a discipline within it. The history of machine
learning can help us understand it better so let us go through a quick overview.
• Web Technology
Loginware Web Technology group: One of the most dynamic Web Development and Web
Design Company. We will make your web presence most emphatic and impressive. The
impression that our websites create in the minds of the users go a long way in ensuring
extended user engagement that finally turns out into favorable business for your organization.
• Automotive
Loginware Automotive group: The actual methods behind car production often vary between
companies, vehicle types, and car models. Cars are built in large factories wherein human
activities and machine automation are combined in order to assemble the vehicle as quickly
as possible. Each part of the vehicle is usually built separately, with everything assembled
together into a main chassis as it moves down the production line.
• Data Science
Loginware Data Science group:
Data Wrangling and Management: This involves a thorough understanding of Data Mining,
Data Cleaning.
Data Analysis and Visualization: Analytics and Visualization form an integral part of the Data
Science workflow.
CHAPTER 4
TASKS PERFORMED
Python Programming
Indentation
Python uses whitespace indentation, rather than curly brackets or keywords, to delimit blocks.
An increase in indentation comes after certain statements; a decrease inindentation signifies
the end of the current block. Thus, the program's visual structure accurately represents the
program's semantic structure.
Python provides various options for developing graphical user interfaces (GUIs). Most
important are listed below:
• Tkinter: Tkinter is the Python interface to the Tk GUI toolkit shipped with Python. We
would look this option in this tutorial.
• wxPython: This is an open-source Python interface for windows.
• JPython: JPython is a Python port for Java, which gives Python scripts seamless access
to Java class libraries on the local machine
4.2 DBMS
A Database Management System (DBMS) is a software system that is designed to
manage and organize data in a structured manner. It allows users to create, modify, and query
a database, as well as manage the security and access controls for that database.
• Data modelling: A DBMS provides tools for creating and modifying data models, which
define the structure and relationships of the data in a database.
• Data storage and retrieval: A DBMS is responsible for storing and retrieving data from
the database, and can provide various methods for searching and querying the data.
• Concurrency control: A DBMS provides mechanisms for controlling concurrent access to
the database, to ensure that multiple users can access the data without conflicting with
each other.
• Data integrity and security: A DBMS provides tools for enforcing data integrity and
security constraints, such as constraints on the values of data and access controls that
restrict who can access the data.
• Backup and recovery: A DBMS provides mechanisms for backing up and recovering the
data in the event of a system failure.
DBMS can be classified into two types: Relational Database Management System (RDBMS)
and Non-Relational Database Management System (NoSQL or Non-SQL)
RDBMS: Data is organized in the form of tables and each table has a set of rows and
columns. The data is related to each other through primary and foreign keys.
NoSQL: Data is organized in the form of key-value pairs, document, graph, or column
based. These are designed to handle large-scale, high-performance scenarios.
Database is a collection of interrelated data which helps in the efficient retrieval,
insertion, and deletion of data from the database and organizes the data in the form of
tables, views, schemas, reports, etc. For Example, a university database organizes the
data about students, faculty, admin staff, etc. which helps in the efficient retrieval,
insertion, and deletion of data from it.
DDL is the short name for Data Definition Language, which deals with database schemas and
descriptions, of how the data should reside in the database. CREATE: to create a database
and its objects like (table, index, views, store procedure, function, and triggers)
• ALTER: alters the structure of the existing database
• TRUNCATE: remove all records from a table, including all spaces allocated for the
records are removed
• COMMENT: add comments to the data dictionary
DML is the short name for Data Manipulation Language which deals with data manipulation
and includes most common SQL statements such SELECT, INSERT, UPDATE, DELETE,
etc., and it is used to store, modify, retrieve, delete and update data in a database.
• SELECT: retrieve data from a database
DCL is short for Data Control Language which acts as an access specifier to the database.
(basically to grant and revoke permissions to users in the database.
• GRANT: grant permissions to the user for running DML (SELECT, INSERT,
DELETE…) commands on the table
• REVOKE: revoke permissions to the user for running DML (SELECT, INSERT,
DELETE…) command on the specified table
TCL is short for Transactional Control Language which acts as an manager for all types of
transactional data and all transactions. Some of the command of TCL are
• Save Point: It is used to save the data on the temporary basis in the database
Database Management System: The software which is used to manage databases is called
Database Management System (DBMS). For Example, MySQL, Oracle, etc. are popular
commercial DBMS used in different applications. DBMS allows users the following tasks:
• Data Definition: It helps in the creation, modification, and removal of definitions that
define the organization of data in the database.
• Data Updation: It helps in the insertion, modification, and deletion of the actual data in
the database.
• Data Retrieval: It helps in the retrieval of data from the database which can be used by
applications for various purposes.
• User Administration: It helps in registering and monitoring users, enforcing data
security, monitoring performance, maintaining data integrity, dealing with concurrency
control, and recovering information corrupted by unexpected failure. File System
manages data using files on a hard disk. Users are allowed to create, delete, and update
the files according to their requirements. Let us consider the example of file-based
University Management System. Data of students is available to their respective
Departments, Academics Section, Result Section, Accounts Section, Hostel Office, etc.
Some of the data is common for all sections like Roll No, Name, Father Name, Address,
and Phone number of students but some data is available to a particular section only like
Hostel allotment number which is a part of the hostel office.
• Redundancy of data: Data is said to be redundant if the same data is copied at many
places. If a student wants to change their Phone number, he or she has to get it updated in
various sections. Similarly, old records must be deleted from all sections representing that
student.
• Inconsistency of Data: Data is said to be inconsistent if multiple copies of the same data
do not match each other. If the Phone number is different in Accounts Section and
4.3 SQL
conn = sqlite3.connect('company.db’)
This statement imports the sqlite3 module in the program. Using the classes and methods
defined in the sqlite3 module we can communicate with the SQLite database.
Use the connect() method of the connector class with the database name. To establish a
connection to SQLite, need to pass the database name you want to connect. If specify the
database file name that already presents on the disk, it will connect to it. But if specified
SQLite database file doesn’t exist, SQLite creates a new database. This method returns the
SQLite Connection Object if the connection is successful.
c= conn.cursor()
3. Use the cursor() method
Use the cursor() method of a connection class to create a cursor object to execute SQLite
command/queries from Python.
c= conn.cursor()
The execute() methods run the SQL query and return the result.Manipulate the Data Using
SQL.
c.execute(‘create table employee(name, age)’)
This statement will run a SQL command that will create a table called employee, with two
columns (fields) name and age.
import sqlite3
conn=sqlite3.connect("database.db") c=conn.cursor()
#creating a file
FETCH Statement
The FETCH statement retrieves rows of data from the result set of a multiple-row
query-one row at a time, several rows at a time, or all rows at once-and stores the data in
variables, records, or collections.Python’s cursor class methods fetchall(), fetchmany(), and
fetchone() to retrieve rows from a database table.
1. cursor.fetchall()
Fetches all the rows of a query result. It returns all the rows as a list of tuples. An empty list
is returned if there is no record to fetch.
Syntax: data1=c.execute(“select * from students”).fetchall()
2. cursor.fetchmany(size)
The number of rows specified by size argument. When called repeatedly, this method
fetches the next set of rows of a query result and returns a list of tuples.
3. cursor.fetchone()
CHAPTER 5
RASPBERRY PI
All Raspberry Pi models come with 40 GPIO pins on the main board (except for the
Pico, which I have a separate guide for it here). The Raspberry Pi Zero (and Zero 2) exist in
two versions (with or without the pins pre-soldered), but you can use them too.When you take
the Raspberry Pi board in front of you with the USB ports at the bottom, the GPIO pin 1 is in
the top-left corner. Number 2 is in the top-right corner (not below), and from there it goes
from left to right, and the next line, as if reading a book. There are two lines of 20 pins, so 40
pins in total. Orientate your Pi with the GPIO on the right and the HDMI port (s) on the left.
Pinout! The Raspberry Pi GPIO pinout guide. This GPIO Pinout is an interactive reference
to the Raspberry Pi GPIO pins, and a guide to the Raspberry Pi's GPIO interfaces. Pinout also
includes hundreds of pinouts for Raspberry Pi add-on boards, HATs and pHATs.The
Raspberry Pi Serial (UART) pins are: PWM stands for Pulse Width Modulation and it is used
to control motors, define varying levels of LED brightness, define the color of RGB LEDs,
and much more. The Raspberry Pi has 4 hardware PWM pins: GPIO 12, GPIO 13, GPIO 18,
GPIO 19. You can have software PWM on all pins. Pin 1 is the only pin with a square solder
pad, which may only be visible from the underside of your Pi. If you orient your Pi such that
you are looking at the top with the GPIO on the right and HDMI port (s) on the left, your
orientation will match Pinout. We've whipped up a simple graphical Raspberry Pi GPIO
Pinout.
LED
The RGB LED is a type of LED that can produce three main colors that are RED,
GREEN, and BLUE. In other words, it’s a single LED that contains three LEDs inside it. One
for the RED color, one for the GREEN color, and one for the BLUE color. The RGB LED
that we gonna discuss in this article is non-programmable and it is of two types. One is a
common anode RGB LED and the other is a common cathode RGB LED.
A common anode RGB LED consists of four terminals out of which one is for the
common anode, one is for the RED LED cathode terminal, one is for the GREEN LED
cathode terminal, and the last one is for the BLUE LED cathode terminal. We call it a common
anode RGB LED because in this type of RGB LED, the anode terminal of all three LEDs is
shorted internally and connected to one terminal and that terminal is known as a common
anode terminal.
On the other hand, a common cathode RGB LED also consists of four terminals but in
this type of RGB LED one terminal is for the common cathode, one is for the RED LED
anode terminal, one is for the GREEN LED anode terminal and the last one is for the BLUE
LED anode terminal. We call it a common cathode RGB LED because in this type of LED,
the anode terminal of all three LEDs is shorted internally and connected to one terminal and
that terminal is known as a common anode terminal.
Ultrasonic sensor
An ultrasonic sensor is an electronic device that measures the distance of a target object
by emitting ultrasonic sound waves, and converts the reflected sound into an electrical signal.
Ultrasonic waves travel faster than the speed of audible sound (i.e. the sound that humans can
hear). Ultrasonic sensors have two main components: the transmitter (which emits the sound
using piezoelectric crystals) and the receiver (which encounters the sound after it has travelled
to and from the target).
Ultrasonic sensors are used primarily as proximity sensors. They can be found in
automobile self-parking technology and anti-collision safety systems. Ultrasonic sensors are
also used in robotic obstacle detection systems, as well as manufacturing technology. In
comparison to infrared (IR) sensors in proximity sensing applications, ultrasonic sensors are
not as susceptible to interference of smoke, gas, and other airborne particles (though the
physical components are still affected by variables such as heat). Ultrasonic sensors are also
used as level sensors to detect, monitor, and regulate liquid levels in closed.
Pin Pin
Description
Number Name
1 VCC The VCC pin powers the sensor, typically with +5V
2 Trigger Trigger pin is an Input pin. This pin has to be kept high
for 10us to initialize measurement by sending US wave
3 Echo Echo pin is an Output pin. This pin goes high for a period
of time which will be equal to the time taken for the US
wave to return back to the sensor.
RFID
A reader consists of a radio frequency module and an antenna that generates a high
frequency electromagnetic field. Whereas the tag is usually a passive device (it does not have
a battery). It consists of a microchip that stores and processes information, and an antenna for
receiving and transmitting a signal.
Switch
The terms pole and throw are also used to describe switch contact variations. The
number of “poles” is the number of separate circuits which are controlled by a switch. The
number of “throws” is the number of separate positions that the switch can adopt. A single-
throw switch has one pair of contacts that can either be closed or open. A double-throw switch
has a contact that can be connected to either of two other contacts; a triple-throw has a contact
which can be connected to one of three other contacts, etc.
4 Types of Switches
1. SPST
2. SPDT
3. DPST
4. DPDT
Buzzer
The buzzer is a sounding device that can convert audio signals into sound signals. It
is usually powered by DC voltage. It is widely used in alarms, computers, printers and other
electronic products as sound devices. It is mainly divided into piezoelectric buzzer and
electromagnetic buzzer, represented by the letter "H" or "HA" in the circuit.The two most
common technologies used in buzzer designs are magnetic and piezo. Many applications use
either a magnetic or a piezo buzzer, but the decision regarding which of the two technologies
to use is based upon many diferent constraints.
A buzzer is an acoustic signaling device that generates sound when activated. It serves
as an audible indicator, delivering important information or warnings to users. Buzzers utilize
different technologies to produce sound, with the most common methods being
electromagnetism and piezoelectricity.
Types of buzzers:
Buzzers come in a variety of construction, size, and specifications. Different types and
sizes of buzzers are used for different applications. Based on construction, there are the
following kinds of buzzers:
1. Piezoelectric buzzers
2. Magnetic buzzers
3. Electromagnetic buzzers
4. Mechanical buzzers
5. Electromechanical buzzers
Piezoelectric and magnetic buzzers are most commonly used in electronic applications. The
buzzers are designed to be used as a transducer or indicator in any circuit.
LCD Display
16×2 LCD is a 32 digits display screen for all kinds of CMOS/TTL devices. This word
comes from the liquid crystal and 16X2 represents its screen size. In Liquid crystal display
16×2, there are 2 rows and 16 columns. Besides, 5×8 pixel makes a single digit. Any digit
from ASCII code is viewable on the module. 16 X2 displays mostly depend on multi-segment
LEDs. There are different types of displays available in the market with different
combinations such as 8×2, 8×1, 16×1, and 10×2, however, the LCD 16×2 is broadly used in
devices, DIY circuits, electronic projects due to less cost, programmable friendly & simple
to access. The LCD 16×2 working principle is, it blocks the light rather than dissipate. This
article discusses an overview of LCD 16X2, pin configuration and its working. What is the
LCD 16×2? The term LCD stands for liquid crystal display.
The commands of LCD 16X2 include the following. For Hex Code-08, the LCD command
will be Display off, cursor off For Hex Code-0A, the LCD command will be cursor on and
display off For Hex Code-0C, the LCD command will be cursor off, display on For Hex Code-
0E, the LCD command will be cursor blinking, Display on. Nowadays, we always use the
devices which are made up of LCDs such as CD players, DVD players, digital watches,
computers, etc. These are commonly used in the screen industries to replace the utilization of
CRTs. Cathode Ray Tubes use huge power when compared with LCDs, and CRTs heavier as
well as bigger. These devices are thinner as well power consumption is extremely less.
The LCD 16×2 working principle is, it blocks the light rather than dissipate. This article
discusses an overview of LCD 16X2, pin configuration and its working.
Relay
Relay modules are simply circuit boards that house one or more relays. They come in
a variety of shapes and sizes, but are most commonly rectangular with 2, 4, or 8 relays
• A relay is an electrical switch that can be used to control devices and systems that use
higher voltages. In the case of module relay, the mechanism is typically
an electromagnet.
• The relay module input voltage is usually DC. However, the electrical load that a relay
will control can be either AC or DC, but essentially within the limit levels that the relay
is designed for.
• A relay module is available in an array of input voltage ratings: It can be a 3.2V or 5V
relay module for low power switching, or it can be a 12 or 24V relay module for heavy-
duty systems.
• The relay module information is normally printed on the surface of the device for ready
reference. This includes the input voltage rating, switch voltage, and current limit.
• The relay module function is mainly to switch electrical devices and systems on or off.
It also serves to isolate the control circuit from the device or system being controlled.
• This is important because it allows you the use a microcontroller or other low-power
device to control devices with much higher voltages and currents.
• Another relay module purpose is to amplify the control signal so that it can switch the
higher currents using only a small out of power from a microcontroller.
IR Sensor
IR sensor is an electronic device, that emits the light in order to sense some object of
the surroundings. An IR sensor can measure the heat of an object as well as detects the motion.
Usually, in the infrared spectrum, all the objects radiate some form of thermal radiation. These
types of radiations are invisible to our eyes, but infrared sensor can detect these radiations. The
emitter is simply an IR LED (Light Emitting Diode) and the detector is simply an IR
photodiode . Photodiode is sensitive to IR light of the same wavelength which is emitted by the
IR LED. When IR light falls on the photodiode, the resistances and the output voltages will
change in proportion to the magnitude of the IR light received.
There are five basic elements used in a typical infrared detection system: an infrared
source, a transmission medium, optical component, infrared detectors or receivers and signal
processing. Infrared lasers and Infrared LEDs of specific wavelength used as infrared sources.
The three main types of media used for infrared transmission are vacuum, atmosphere
and optical fibers. Optical components are used to focus the infrared radiation or to limit the
spectral response.
There are two types of IR sensors are available and they are,
Active Infrared Sensor: Active infrared sensors consist of two elements: infrared source and
infrared detector. Infrared sources include the LED or infrared laser diode. Infrared detectors
include photodiodes or phototransistors. The energy emitted by the infrared source is reflected
by an object and falls on the infrared detector.
Passive Infrared Sensor: Passive infrared sensors are basically Infrared detectors. Passive
infrared sensors do not use any infrared source and detector. They are of two types: quantum
and thermal. Thermal infrared sensors use infrared energy as the source of
heat. Thermocouples, pyroelectric detectors and bolometers are the common types of thermal
infrared detectors. Quantum type infrared sensors offer higher detection performance. It is faster
than thermal type infrared detectors. The photo sensitivity of quantum type detectors is
wavelength dependent.
DC Motor
1. Armature or Rotor
The armature of a DC motor is a cylinder of magnetic laminations that are insulated from
one another. The armature is perpendicular to the axis of the cylinder. The armature is a
rotating part that rotates on its axis and is separated from the field coil by an air gap.
Commutator
Brushes
The brushes of a DC motor are made with graphite and carbon structure. These brushes
conduct electric current from the external circuit to the rotating commutator. Hence, we
come to understand that the commutator and the brush unit are concerned with
transmitting the power from the static electrical circuit to the mechanically rotating region
or the rotor.
Types of DC motor
DC motors have a wide range of applications ranging from electric shavers to automobiles.
To cater to this wide range of applications, they are classified into different types based on
the field winding connections to the armature as:
• Self-Excited DC Motor
• Separately Excited DC Motor
VNC Viewer:
A viewer, on the other hand, is a program that renders the contents of a digital file on
screen. VNC Viewers used for local computers and mobile devices you want to control from
A device such as a computer, tablet, or smart phone with VNC Viewer software installed can
access and take control of a computer in another location.
VNC Viewer is a software application used for remote desktop access and control. It
allows users to connect to and interact with a computer or device from a different location
over a network connection. VNC stands for Virtual Network Computing, and VNC Viewer is
one of the client applications used to establish connections to computers running VNC Server
software. With VNC Viewer, users can see the remote desktop, move the mouse, and use the
keyboard as if they were physically present at the remote computer.
This capability is valuable for tasks such as remote technical support, accessing files and
applications from a distance, and managing servers remotely. VNC Viewer typically offers
authentication and security features to ensure secure connections, along with various options
for optimizing performance and usability.
VNC Viewer and VNC Server are designed to work best together. Use them both to
experience enhanced security, more reliable connections, and access to exclusive features
within VNC Connect.
VNC Viewer and VNC Server are designed to work best together. Use them both to
experience enhanced security, more reliable connections, and access to exclusive features
within VNC Connect.
VNC Viewer is a software application that allows users to remotely access and control
computers or devices over a network using the Virtual Network Computing (VNC) protocol.
Here's some key information about VNC Viewer:
1. Remote Access: VNC Viewer enables users to connect to and control remote computers
or devices from a different location. This can be particularly useful for IT support, remote
troubleshooting, accessing files from a distance, or managing servers remotely.
2. Cross-Platform Compatibility: VNC Viewer is typically available for various operating
systems, including Windows, macOS, Linux, Android, and iOS. This cross-platform
compatibility makes it versatile and widely accessible.
3. Authentication and Security: To ensure secure connections, VNC Viewer typically offers
authentication options such as username/password credentials or more advanced
encryption methods like Secure Shell (SSH) tunnelling.
4. Features: VNC Viewer may include features such as file transfer capabilities, remote
printing, session recording, chat functionality for communication between the remote
user and the local user, and the ability to share screens for collaborative work.
PyCharm
DB Browser for SQLite is a useful, free, open-source software that can be used to
manage, process and explore databases. DB Browser for SQLite (DB4S) is a high quality,
visual, open source tool to create, design, and edit database files compatible with
SQLite.DB4S is for users and developers who want to create, search, and edit databases.
DB4S uses a familiar spreadsheet-like interface, and complicated SQL commands do not have
to be learned.
CHAPTER 6
DOOR UNLOCKING SYSTEM
6.1 Introduction
In an age where security is paramount, door unlocking systems play a pivotal role in
controlling access to various spaces, ensuring safety, privacy, and convenience. Traditional
mechanical locks are being supplemented or replaced by electronic systems for added security
and flexibility. Among these, RFID-based door unlocking systems have gained popularity due
to their reliability and ease of use. This project proposes the implementation of a door
unlocking system using Raspberry Pi and RFID technology. Raspberry Pi, a versatile and
cost-effective single-board computer, serves as the brain of the system, orchestrating the
interaction between the RFID reader, electronic door lock, and access control logic. RFID
(Radio-Frequency Identification) technology enables the identification and authentication of
users through unique tags or cards. Each authorized user possesses an RFID tag encoded with
a unique identifier, which, when presented to the RFID reader, triggers the door unlocking
mechanism.
The system's design involves both hardware and software components. Hardware
includes the Raspberry Pi board, RFID reader module, electronic door lock, and power
supply. Software comprises Python scripts running on the Raspberry Pi, responsible for
interfacing with the RFID reader, implementing access control logic, and controlling the door
lock. By combining the power of Raspberry Pi's computing capabilities with the simplicity
and efficiency of RFID technology, this system offers a reliable and customizable solution
for door access control. Whether deployed in homes, offices, or other secured environments,
it provides a seamless and secure means of granting access to authorized individuals while
maintaining the integrity of the protected space.
6.3 Objective
The primary objective of this project is to design, develop, and implement an advanced door
unlocking system using Raspberry Pi and RFID technology. The system aims to provide
seamless and secure access control by authenticating users based on RFID tags or cards and
unlocking the door upon successful verification. Additionally, the system will offer features
to enhance user convenience, security, and administrative control. The system should be
capable of, Authenticating users based on RFID tags/cards , Granting access to authorized
individuals by unlocking the door, Implementing access control logic to ensure security and
prevent unauthorized entry, Providing a reliable and scalable solution suitable for deployment
in various environments, such as homes, offices, or commercial establishments.
Efficient Authentication Mechanism: Implement a robust authentication mechanism using
RFID technology to accurately identify and verify authorized users attempting to gain access.
Flexible Access Control Policies: Develop a flexible access control framework that allows
administrators to define and enforce granular access control policies based on user roles, time-
based restrictions, and other contextual factors.
Remote Access Management: Integrate remote access management capabilities, enabling
administrators to monitor and manage access permissions remotely via a web-based interface.
Scalability and Interoperability: Design the system to be scalable and interoperable with
existing security systems, allowing for seamless integration and expansion as security needs
evolve.
The provided block diagram illustrates the components and procedures of a door unlocking
system designed to provide seamless and secure access control by authenticating users based
on RFID tags or cards and unlocking the door upon successful verification.
The primary component of this project is the Raspberry Pi Pico, serving as the central
processing unit responsible for interfacing with cell peripherals. These peripherals include an
Driver module, LED indicators, RFID Card Reader, Cards and Tags, LCD Display, DC
Motor, and power supply.
4. If the main card is placed the door unlocks successfully. If in this case the wrong card
is placed the locking system switches to key unlocking system.
5. If the system switches to key unlocking mode then the only way to unlock door is
with key.
This project is meticulously designed to provide seamless and secure access control by
authenticating users based on RFID tags or cards and unlocking the door upon successful
verification.
Advantages
• Enhanced Security: RFID-based door unlocking systems offer higher security compared
to traditional lock-and-key mechanisms. Each RFID tag or card contains a unique
identifier, reducing the risk of unauthorized duplication or access.
• Convenience: Users can gain access to secured areas by simply presenting their RFID
tags or cards to the reader, eliminating the need for physical keys or passwords. This
convenience is particularly beneficial in environments with high foot traffic.
• Customization: The system can be easily customized to accommodate various access
control policies, such as time-based restrictions or user-specific permissions. This
flexibility allows administrators to tailor access control to their specific needs.
• Integration with Other Systems: RFID door unlocking systems can be integrated with
other security systems, such as surveillance cameras or alarm systems, to provide
comprehensive security solutions for homes, offices, or commercial establishments.
• Audit Trail: The system can maintain a digital record of access attempts, including
timestamps and user identities. This audit trail can be invaluable for security audits,
investigations, or compliance purposes.
Disadvantages
• Cost: The initial setup cost of implementing an RFID-based door unlocking system,
including RFID readers, tags, and associated hardware, can be higher compared to
traditional lock-and-key systems..
• Vulnerability to Spoofing: While RFID technology provides enhanced security, it is not
immune to hacking or spoofing attempts. Sophisticated attackers may attempt to clone
RFID tags or intercept communication between the RFID reader and the door locking
mechanism.
• Power Dependency: RFID door unlocking systems rely on a stable power supply to
operate effectively. In the event of a power outage or system malfunction, users may be
unable to access secured areas until the issue is resolved.
• Limited Range: RFID tags/cards must be within close proximity to the RFID reader for
successful authentication, typically within a few inches to a few feet. This limited range
may inconvenience users who must physically approach the reader to gain access.
• Maintenance Requirements: Like any electronic system, RFID door unlocking systems
require regular maintenance to ensure optimal performance. This may include software
updates, hardware checks, and periodic calibration of RFID readers.
Overall, while RFID-based door unlocking systems offer numerous advantages in terms of
security, convenience, and customization, they also come with certain disadvantages that
must be carefully considered and mitigated during the implementation and operation of the
system.
6.7 Application
The application of a door unlocking system using Raspberry Pi and RFID technology is
versatile and can be implemented in various environments where access control is required.
Some key applications include:
Overall, the application of a door unlocking system using Raspberry Pi and RFID technology
extends to any environment where access control is necessary for security, safety, and
efficiency. With its customizable features and seamless integration capabilities, this
technology offers a versatile solution for a wide range of applications across various
industries
6.8 Results
The successful implementation of a door unlocking system using Raspberry Pi and RFID
technology yields several tangible results:
• Enhanced Security: The system provides a reliable and secure means of controlling
access to protected areas, reducing the risk of unauthorized entry and improving overall
security.
• Convenience: Authorized users can gain access to secured areas quickly and easily by
presenting their RFID tags or cards to the reader, eliminating the need for physical keys
or passwords.
• Customization: The system can be customized to accommodate various access control
policies, such as time-based restrictions or user-specific permissions, providing flexibility
to adapt to specific security requirements.
• Audit Trail: The system maintains a digital record of access attempts, including
timestamps and user identities, allowing for easy auditing and monitoring of access
activity.
• Scalability: The system can be scaled to accommodate a large number of users and
access points, making it suitable for deployment in environments of varying sizes and
complexities.
• Integration: The system can be integrated with other security systems, such as
surveillance cameras or alarm systems, to provide comprehensive security solutions for
homes, offices, or commercial establishments.
• Remote Management: Administrators can remotely monitor and manage access
permissions via a web-based interface, providing greater convenience and control over
the system.
• User-Friendly Interface: The system provides intuitive controls for both
administrators and end-users, making it easy to configure access permissions and monitor
system activity.
Overall, the successful implementation of a door unlocking system using Raspberry Pi and
RFID technology results in improved security, convenience, and efficiency for users and
administrators alike.
CONCLUSION
REFERENCES
1. Joshua Bapu.J & Sirkazi Mohd Arif, 2013 "Locker security system using RFID
technology‟ International Journal on Advances in Engineering and Technology.
2. S. Nazeem Basha, Dr. S.A.K. Jilani, Mr. S. Arun , “An Intelligent Door System Using
Raspberry Pi And Amazon Web Services Iot” , International Journal of Engineering
Trends and Technology (IJETT)
3. N. Ahmad, S. Butler, and U. Ramachandran, “GuardianAngel: An RFID based indoor
guidance and monitoring system,” 2010, pp. 546-551. [6] Swetha.J, 2011, „RFID
Based Automated Bank Locker System‟, International Journal of Research in
Engineering and Technology.
4. Juels, A. et al.: The Blocker Tag: Selective Blocking of RFID Tags for Consumer
Privacy, 10th ACM Conference on Computer and Communications Security, 2003
5. R. Want, "An Introduction to RFID Technology", IEEE Pervasive Computing, vol. 5,
iss. 1, pg 25-33, 2006. Provides and easy to understand overview of RFID and how it is
used. This is a reliable source, cited 769 times according to Google Scholar.
This is a journal.
APPENDIX
F=3
Ba=5
R=37
G=11
B=13
GPIO.setmode(GPIO.BOARD)
GPIO.setup(F,GPIO.OUT)
GPIO.setup(Ba,GPIO.OUT)
GPIO.setup(R,GPIO.OUT)
GPIO.setup(G,GPIO.OUT)
GPIO.setup(B,GPIO.OUT)
reader = SimpleMFRC522()
while 1:
f=open("data.txt",'a+')
k=3
while 1:
id,text=reader.read()
if(k>0):
if(id==976822808207):
GPIO.output(F,1)
GPIO.output(Ba,0)
GPIO.output(G,1)
time.sleep(1)
GPIO.output(F,0)
GPIO.output(Ba,0)
GPIO.output(G,0)
f.write("\n"+text)
init()
lcd_cmd(0x80)
str_data("Door unlocked")
lcd_cmd(0xc0)
str_data("successfully")
break
else:
GPIO.output(R,1)
time.sleep(2)
GPIO.output(R,0)
k=k-1
f.write("\n"+text)
init()
lcd_cmd(0x80)
str_data("Invalid,Only")
lcd_cmd(0xc0)
str_data(str(k))
str_data(" attempts left")
else:
break
if(k==0):
GPIO.output(B,1)
time.sleep(2)
GPIO.output(B,0)
id,text=reader.read()
if(id==934009658020):
GPIO.output(F,1)
GPIO.output(Ba,0)
GPIO.output(G,1)
time.sleep(1)
GPIO.output(F,0)
GPIO.output(Ba,0)
GPIO.output(G,0)
f.write("\n"+text)
init()
lcd_cmd(0x80)
str_data("Door unlocked")
lcd_cmd(0xc0)
str_data("successfully")
break
else:
GPIO.output(R,1)
time.sleep(1)
GPIO.output(R,0)
f.write("\n"+text)
init()
lcd_cmd(0x80)
str_data("Use the key to")
lcd_cmd(0xc3)
str_data("unlock")
break
f.close()
# interface card
card.py
return id
# interface LCD
Lcd.py
if x & 0x20==0x20:
GPIO.output(d5,1)
if x & 0x40==0x40:
GPIO.output(d6,1)
if x & 0x80==0x80:
GPIO.output(d7,1)
enable()
GPIO.output(d4,0)
GPIO.output(d5,0)
GPIO.output(d6,0)
GPIO.output(d7,0)
if x & 0x10==0x10:
GPIO.output(d4,1)
if x & 0x20==0x20:
GPIO.output(d5,1)
if x & 0x40==0x40:
GPIO.output(d6,1)
if x & 0x80==0x80:
GPIO.output(d7,1)
enable()
def lcd_data(x):
GPIO.output(rs,1)
GPIO.output(d4,0)
GPIO.output(d5,0)
GPIO.output(d6,0)
GPIO.output(d7,0)
if x & 0x10==0x10:
GPIO.output(d4,1)
if x & 0x20==0x20:
GPIO.output(d5,1)
if x & 0x40==0x40:
GPIO.output(d6,1)
if x & 0x80==0x80:
GPIO.output(d7,1)
enable()
GPIO.output(rs,1)
GPIO.output(d4,0)
GPIO.output(d5,0)
GPIO.output(d6,0)
GPIO.output(d7,0)
if x & 0x10==0x10:
GPIO.output(d4,1)
if x & 0x20==0x20:
GPIO.output(d5,1)
if x & 0x40==0x40:
GPIO.output(d6,1)
if x & 0x80==0x80:
GPIO.output(d7,1)
enable()
def init()
lcd_cmd(0x33)
lcd_cmd(0x32)
lcd_cmd(0x28)
lcd_cmd(0x0c)
lcd_cmd(0x0e)
lcd_cmd(0x01)
def strg_data(x):
length=len(x)
for i in range(0,length):
lcd_data(ord(x[i]))