BTech Final Year Project Report MMMUT
BTech Final Year Project Report MMMUT
Project Report
on
VEHICLE SECURITY SYSTEM
USING CLOUD SERVICES
Bachelor of Technology
in
Electronics & Communication Engineering
Submitted by:
(Session: 2022-2023)
© M. M. M. University of Technology, Gorakhpur (U.P.) – 273010, INDIA
ALL RIGHTS RESERVED
CANDIDATE’S DECLARATION
I declare that this written submission represents my work and ideas in my own words and
where others’ ideas or words have been included, I have adequately cited and referenced
the original sources. I also declare that I have adhered to all principles of academic
honesty and integrity and have not misrepresented or fabricated or falsified any
idea/data/fact/source in my submission. I understand that any violation of the above will
be cause for disciplinary action by the university and can also evoke penal action from
the sources which have thus not been properly cited or from whom proper permission has
not been taken when needed.
Dhananjay Saroj
Roll No. 2019041048
Gaurav Singh
Roll No. 2019041053
Bachelor of Technology
Department of Electronics and Communication Engineering
Date:
CERTIFICATE
Certified that Abhishek Kumar Upadhyay, Aditya Pratap Singh, Dhananjay
Saroj, Gaurav Singh has carried out the research work presented in this thesis entitled
“Vehicle Security System Using Cloud Services” for award of Bachelor of Technology
from Madan Mohan Malaviya University of Technology, Gorakhpur under my
supervision. The thesis embodies result of original work and studies carried out by student
himself and the contents of the thesis do not the basis for the award of any other degree
to the candidate or to anybody else.
Date:
APPROVAL SHEET
This project report entitled “Vehicle Security System using Cloud Services” by
Abhishek Kumar Upadhyay, Aditya Pratap Singh, Gaurav Singh, Dhananjay Saroj is
approved for the degree of Bachelor of Technology in Electronics and Communication
Engineering.
Examiner
_____________________
Supervisor
_____________________
Head of Department
_____________________
Date:
Place:
ACKNOWLEDGEMENT
It is matter of great pleasure and satisfaction for me to present this dissertation work
entitled “Vehicle Security System using Cloud Services”, as a part of curriculum for
award of “Bachelor of Technology” from Madan Mohan Malaviya University of
Technology, Gorakhpur (U.P.) India.
I am very grateful to my Head of the Department Prof S.K. Soni. It has been truly
reassuring to know that he is always willing to share his quest for new problem and new
solutions forms a very challenging and rewarding environment with us. He provides all
kind of academic as well as administrative support for smooth completion of my
dissertation work. Without his valuable guidance, this work would never have been a
successful one.
I am very much thankful to my supervisor, Dr. Sudhanshu Verma also to encourage me
to perform work in emerging area of research-based devices and their digital circuit
applications as well as their continuous guidance and support throughout my work. I
would also like to thank all my classmates and friends for their valuable suggestions and
helpful discussions.
At last, I am grateful to my family member especially my beloved parents, for their
encouragement and tender. Without them, I was unable to have enough strength to finish
this dissertation.
Date:
LIST OF FIGURES
Figure Description of Figures Page
No. No.
1 Block Diagram 5
3.1 Microcontroller 8
3.2 Blynk Cloud Framework 9
3.3 Key Switch 11
3.4 Relay 12
3.5 Battey 13
4 Circuit Diagram 16
ABSTRACT
The vehicle security system using cloud service project aims to design and develop a
cloud-based security system to enhance the security of vehicles. The system will utilize a
cloud service to turn on and off the ignition system, to detect any unauthorized access or
tampering to the key switch. The relay will be handled remotely using cloud technology,
making it easier to control the ignition of vehicle. The model includes an ESP8266 Wi-
Fi module, relay, push buttons for the ignition and motor which is depicting the motion
of the vehicle when the ignition is being turned on. The ignition is being controlled by
the Blynk IoT push button which is being connected to the ESP8266 module. The coding
for the ESP8266 is being written in Embedded C and has been compiled and send to the
board through microcontroller console.
The cloud-based vehicle security system has several benefits, including increased
security, remote monitoring, and real-time notifications. It is a practical and efficient way
to protect vehicles from theft, vandalism, or other security threats. With the right
hardware and software configuration, such a system can be customized to meet the
specific security needs of different types of vehicles. The project will focus on developing
a prototype system and testing its functionality under different conditions. The findings
of the project will provide insights into the design and implementation of cloud-based
security systems for vehicles.
TABLE OF CONTENTS
Certificate ..................................................................................................... .ii
Acknowledgement ..........................................................................................vi
Abstract .......................................................................................................... x
CONCLUSION
REFERENCES...........................................................................................................
Appendix .....................................................................................................................
Chapter -1: Introduction
Infrastructure, platforms, or software that are hosted by external providers and made
accessible to users online are referred to as cloud services.
If you own a car in India, it is important to take steps to protect your vehicle from thieves.
It is estimated that around 100,000 cars are stolen each year in India. This number is only
going to continue to grow as the economy improves and more people are able to afford
cars. If a user owns a car in India, it is important to take steps to protect your vehicle from
thieves. Today's world of comfort and luxury offers a wide range of expensive, high-
priced vehicles. Many of these vehicles have security features built right into them from
the start. However, despite significant financial investment in areas of vehicle security,
the number of vehicle theft incidents is increasing persistently [1,2].
This condition encourages research into further security measures to prevent vehicle
thefts. We have made the decision to focus our project on improving vehicle security and
safety in order to reduce auto theft. The user can keep tabs on their vehicle, its routes, and
its arrival with the vehicle tracking system.
There exists another problem. Recent advancement in the automobile industry has opted
many people to use their own vehicle for traveling. This has increased effect on car
ownership. But to park all these cars in the major metro cities is quite tedious and difficult
task. After wrong parking, problems like towing occurs and hence, there is no solution as
of now. Thus, the project also deals with this problem of parking and subsequent towing.
To tackle all the problems specified above, the project have features like, ignition control.
This feature should provide better security to the car. [2] To solve this problem our project
has a system which protects your vehicle and is easy to install in your old vehicles too.
This system uses Arduino and AWS server which is a cloud service open based platform
to verify the driver’s identity and controls the ignition of the engine on basis of that.
Vehicle security has become a major concern in today's world due to the increasing
incidents of vehicle theft, vandalism, and unauthorized access. Traditional vehicle
security systems, such as immobilizers and alarms, provide some level of protection but
often fall short in addressing the evolving challenges and sophisticated techniques
employed by criminals. As technology advances, there is a need for more intelligent and
robust security solutions that can adapt to emerging threats.
Cloud computing has emerged as a transformative technology that offers immense
potential in various domains, and vehicle security is no exception. By leveraging cloud
services, it is possible to develop a highly effective and scalable vehicle security system
that can provide real-time monitoring, proactive threat detection, and seamless integration
with other technologies.
The concept of vehicle security using cloud services involves connecting the vehicles to
a cloud-based backend infrastructure, where data from the vehicles is collected,
processed, and analyzed in real-time. This cloud-based approach offers numerous
advantages over traditional standalone security systems. Firstly, it allows for centralized
management and monitoring of multiple vehicles, making it easier to track and protect a
fleet of vehicles simultaneously. Secondly, it provides the flexibility to scale the system
as needed, accommodating a growing number of vehicles and expanding functionalities.
Finally, cloud services offer enhanced data storage and processing capabilities, enabling
the application of advanced algorithms and machine learning models for improved
security.
By utilizing cloud services, a vehicle security system can benefit from real-time data
streams from various on-board sensors, such as GPS, accelerometers, and proximity
sensors. These sensors provide information about the vehicle's location, movement, and
surrounding environment. This data is securely transmitted to the cloud backend, where
it undergoes analysis using intelligent algorithms. The algorithms detect anomalies,
unauthorized access, and suspicious activities, triggering appropriate actions such as
sending alerts to the vehicle owner or authorities, activating immobilizers, or even
disabling the vehicle remotely.
Additionally, cloud services offer seamless integration with other technologies, such as
image recognition, license plate recognition, and video surveillance. This integration
enhances the system's capabilities by enabling the identification of unauthorized
individuals near the vehicle, tracking license plate numbers, and capturing video evidence
of security breaches.
In summary, the application of cloud services in vehicle security provides a promising
approach to address the existing limitations of traditional security systems. By leveraging
the power of cloud computing, vehicle security systems can achieve real-time monitoring,
proactive threat detection, and seamless integration with other technologies. This
integration not only enhances the security features but also enables scalability, flexibility,
and centralized management of multiple vehicles. The following sections of this project
will delve deeper into the design, implementation, and evaluation of a vehicle security
system using cloud services, showcasing its potential to revolutionize vehicle security
and mitigate the risks associated with vehicle theft and unauthorized access.
Chapter 2: Block Diagram Formation
Creating a block diagram is a visual way to represent the components and their
interactions within a system. It helps to illustrate the system's architecture, functions, and
flow of information or signals. Here's a step-by-step guide on how to create a block
diagram:
Identify the main components: Start by identifying the major components or subsystems
that make up your system. These could be hardware components, software modules, or
functional units. Determine the relationships: Consider how these components interact
with each other. Identify the input and output relationships, as well as the flow of data,
signals, or control between the components. Define the blocks: Represent each
component or subsystem as a rectangular block. Label each block with a name that clearly
identifies its function or purpose. Place the blocks in a logical order, indicating the
sequence of operations or data flow.
Connect the blocks: Use arrows or lines to establish connections between the blocks,
representing the flow of information, signals, or control. Ensure that the connections
accurately reflect the relationships and interactions between the components.
Include interfaces and inputs/outputs: If applicable, indicate the interfaces between the
system and external entities, such as sensors, actuators, or other systems. Also, include
the input and output signals or data associated with each component.
Add labels and annotations: Use labels or annotations to provide additional information
or clarify specific aspects of the block diagram. This may include descriptions,
specifications, or explanations of the functions or operations of the components.
Review and refine: Step back and review the block diagram to ensure that it accurately
represents the system and its interactions. Make any necessary adjustments or refinements
to improve clarity and coherence document and share: Once the block diagram is
finalized, document it by creating a digital or physical copy. Share it with team members,
stakeholders, or collaborators to facilitate understanding and communication. Remember,
the specific structure and level of detail in a block diagram can vary depending on the
complexity and scope of your system. It should be designed in a way that effectively
communicates the essential components and their relationships, providing a clear
overview of the system's architecture.
When constructing a block diagram, it is important to take certain precautions to ensure
accuracy, clarity, and effective communication. Here are some precautions to consider:
Clearly define the scope: Clearly define the boundaries and scope of the system you are
representing in the block diagram. This helps to avoid including unnecessary components
or omitting critical ones.
Use consistent notation: Follow a consistent notation or graphical symbols throughout the
block diagram. This improves readability and understanding for anyone reviewing or
using the diagram.
Avoid ambiguity: Ensure that the connections and relationships between components are
clear and unambiguous. Use labeled arrows or lines to indicate the flow of information,
signals, or control. Ambiguous or misleading connections can lead to misunderstandings
and errors.
Maintain proper hierarchy: Organize the blocks in a logical and hierarchical manner.
Show higher-level components at the top and more detailed or subsystem-level
components below. This helps to maintain a clear and structured representation of the
system.
Use descriptive labels: Provide descriptive and meaningful labels for each block and
connection. This helps readers understand the purpose or function of each component and
how they interact with each other.
Avoid excessive complexity: Keep the block diagram as simple and concise as possible
while still capturing the essential components and relationships. Avoid overcrowding
with too many blocks or connections, as it can make the diagram difficult to interpret.
Validate accuracy: Verify the accuracy of the block diagram by cross-checking it with
system specifications, requirements, or other relevant documentation. This ensures that
the diagram correctly represents the intended system architecture.
Review and get feedback: Share the block diagram with colleagues, subject matter
experts, or stakeholders for review and feedback. They may offer valuable insights,
identify potential errors or improvements, and help ensure that the diagram effectively
communicates the system's structure.
Keep it up-to-date: Update the block diagram whenever changes are made to the system
or its components. This helps to maintain the accuracy and relevance of the diagram over
time.
By following these precautions, you can create a well-constructed block diagram that
accurately represents the system and effectively communicates its architecture,
components, and interactions.
All the measures and precautions have been taken and considered while designing the
block diagram for the particular project. The diagram represents a graphical flow that how
the diagram will work in our device.
All the measures and precautions have been taken and considered while designing the
block diagram for the particular project. The diagram represents a graphical flow that how
the diagram will work in our device.
After creating a block diagram, there are several potential next steps depending on the
purpose and context of the diagram:
Detailed Design: Use the block diagram as a foundation for detailed design activities.
Break down each block into its internal components, subsystems, or modules, and
develop detailed designs for each element. This may involve creating more specific
diagrams, such as circuit diagrams, flowcharts, or state diagrams, depending on the nature
of the system.
System Integration: If the block diagram represents a complex system with multiple
subsystems or components, the next step may involve system integration. Identify the
interfaces and connections between the blocks and define the integration process to bring
the individual components together into a cohesive system. This may include addressing
compatibility issues, conducting integration testing, and ensuring proper communication
and functionality between the components.
Documentation: Document the block diagram along with any additional details or
explanations. This documentation can serve as a reference for future development,
maintenance, or troubleshooting purposes. It may also be shared with stakeholders,
clients, or collaborators to provide an overview of the system's architecture and
functionality.
Analyze the Block Diagram: Study the block diagram of your project carefully.
Understand the various components and their functions as represented in the diagram.
Identify the input and output requirements, as well as the interconnections between the
blocks.
Identify Component Categories: Based on the functions represented in the block diagram,
categorize the required components into different types such as resistors, capacitors,
integrated circuits, sensors, actuators, power supplies, microcontrollers, etc. This will
help you organize your search for components.
Compare and Select Components: Review the search results and compare different
components based on their specifications, pricing, availability, and suitability for your
project. Consider factors such as component size, power consumption, and any special
features or requirements specific to your project. Check Component Datasheets: Once
you have identified potential components, retrieve and review their datasheets. Datasheets
provide detailed information about the component's electrical and mechanical
characteristics, pin configurations, recommended operating conditions, and application
notes. Ensure that the selected components meet your project's requirements and are
compatible with the other components in the circuit.
Procure Components: Once you have finalized the components, proceed with procuring
them from the chosen suppliers. Place your orders, considering factors like quantity, lead
time, shipping options, and cost.
Verify Component Availability: Before finalizing your component selection, double-
check the availability of the components. Some components may have long lead times or
limited stock. Ensure that the required quantity is available within your project timeline.
By following these steps, you can effectively find the components required for your
project based on the information provided in the block diagram. It is important to ensure
that the selected components meet your project's specifications, are compatible with other
components, and are available within your project timeline.
The ESP8266 is commonly used in IoT projects where Wi-Fi connectivity is required. It can be
used to connect devices to the internet, enabling communication and data transfer between the
device and other networked systems.
Home Automation: With the ESP8266, you can create home automation systems that allow you
to control and monitor various devices remotely using Wi-Fi. Examples include controlling lights,
appliances, security systems, and temperature sensors through a smartphone or web interface.
Wireless Sensor Networks: The ESP8266 can be integrated with sensors to create wireless sensor
networks. It enables the transmission of sensor data over Wi-Fi, allowing you to monitor and
collect data from multiple sensors in real-time.
Wi-Fi-enabled Projects: The ESP8266 can be used to add Wi-Fi connectivity to projects that
require internet access, such as weather stations, remote monitoring systems, wireless camera
modules, and smart irrigation systems.
Web Server and Web Client: The ESP8266 can function as a web server or a web client, allowing
it to host web pages or interact with other web servers. This capability is useful for creating IoT
dashboards, data logging, remote control interfaces, and accessing web-based services.
Industrial Applications: The ESP8266 can be used in industrial applications where wireless
connectivity is required, such as remote monitoring and control systems, asset tracking, and
environmental monitoring.
These are just a few examples of the applications and uses of the ESP8266. Its versatility,
affordability, and community support have contributed to its popularity in a wide range of projects
requiring Wi-Fi connectivity.
Figure 3.1 ESP-8266 Microcontroller
The ESP8266 is a widely used and versatile Wi-Fi module that provides embedded Wi-Fi
connectivity for various electronic projects. Here's a summary of the ESP8266:
Function: The ESP8266 module enables devices to connect to Wi-Fi networks, allowing for
internet connectivity and communication with other networked systems.
Features: The ESP8266 is compact, cost-effective, and consumes low power. It integrates a
microcontroller unit (MCU), Wi-Fi transceiver, and TCP/IP stack, making it capable of
standalone operation.
Thus ESP-8266 Microcontroller plays very important role in vehicle security device
implementation.
IoT Platform: Blynk offers an integrated platform for developing and managing IoT
applications. It provides tools, services, and infrastructure to connect devices, collect data,
and control them remotely.
Blynk App: The Blynk app is a mobile application available for iOS and Android devices.
It provides a user-friendly interface for monitoring and controlling connected devices.
Users can create customized dashboards, control widgets, and receive notifications from
their devices.
Drag-and-Drop Interface: Blynk offers a drag-and-drop interface within the app, allowing
users to easily create and customize their device control interfaces. Widgets such as
buttons, sliders, graphs, and gauges can be added to the app's dashboard to interact with
the connected devices. API and Libraries: Blynk provides a set of APIs and libraries for
popular programming languages such as Arduino, Raspberry Pi, ESP8266, and more.
These libraries simplify the process of integrating devices with the Blynk cloud platform
and enable communication between devices and the Blynk app.
Cloud Security: Blynk employs security measures to protect user data and ensure secure
communication between devices and the cloud. It uses encrypted connections and
authentication mechanisms to ensure data privacy and device access control.
Integration with Third-Party Services: Blynk supports integration with various third-party
services, such as IFTTT (If This Then That), allowing users to create complex automation
and interaction scenarios with other platforms and services. Community and
Documentation: Blynk has an active and supportive community of developers and users.
Extensive documentation, tutorials, and examples are available to help users get started
and explore the full capabilities of the Blynk cloud framework.
Overall, Blynk provides a comprehensive cloud framework for IoT applications, enabling
easy device connectivity, control, and data management through its drag-and-drop app
interface, libraries, and cloud infrastructure.
Figure 3.2 This is a flow of how the Blynk Cloud server works in the framework.
Blynk Cloud Application offers several advantages for developing IoT projects. Here are some
of its key advantages:
Ease of Use: Blynk Cloud Application provides a user-friendly interface with a drag-and-drop
dashboard builder, making it accessible to users with minimal programming knowledge. The
intuitive interface allows users to quickly create custom control interfaces for their IoT devices.
Rapid Prototyping: Blynk simplifies the process of prototyping IoT projects. With its extensive
library of pre-built widgets, users can quickly add buttons, sliders, graphs, and other interactive
elements to the app's dashboard. This accelerates the development process, allowing for rapid
iteration and testing of ideas.
Device Compatibility: Blynk supports a wide range of hardware platforms, including popular
microcontrollers like Arduino, Raspberry Pi, ESP8266, and many others. This compatibility
allows users to choose the hardware that best suits their project requirements, without being tied
to a specific platform.
Cloud Connectivity: Blynk Cloud Application leverages cloud-based servers, enabling seamless
communication between the user's mobile app and connected devices. This eliminates the need
for users to set up their own servers or manage complex networking configurations, making it
easier to connect and control devices remotely.
Real-Time Control and Monitoring: With Blynk, users can monitor and control their IoT devices
in real-time through the mobile app. The app provides instant feedback, allowing users to view
sensor readings, trigger actions, and receive notifications based on device events. Customization
and Personalization: Blynk Cloud Application allows users to fully customize the app's interface
and functionality. Users can design their own control panels, choose colors and themes, and tailor
the app to suit their specific needs or branding requirements.
Mechanical Security: Key switches provide a level of mechanical security by requiring a specific
key to operate the switch. This helps restrict unauthorized access or operation of devices or
systems.
Control and Activation: The key is used to turn the switch to the desired position, either on or off.
This control mechanism ensures that only individuals with the appropriate key can activate or
deactivate the switch.
Security Systems: Key switches are commonly used in security systems, such as alarm systems,
access control systems, or electronic locks. They provide an additional layer of security by
requiring a physical key to arm or disarm the system.
Industrial Applications: Key switches find applications in industrial settings where safety and
security are critical. They can be used for emergency stop switches, machinery control, or
hazardous area switches, ensuring that only authorized personnel can operate specific equipment.
Electrical Ratings: Key switches have specific electrical ratings, including voltage and current
capacity, which determine their suitability for different applications. It is important to select a key
switch that matches the requirements of the electrical circuit it will be connected to.
Keyed Alike or Keyed Different: Key switches are available in both keyed alike and keyed
different options. Keyed alike means that multiple key switches can be operated by the same key,
while keyed different means each key operates only a specific switch. The choice depends on the
desired level of key control and convenience.
Durability and Weatherproofing: Key switches designed for outdoor or rugged environments are
often built to be durable and weatherproof. They may feature robust construction, seals, or
protective coatings to ensure reliable operation in harsh conditions.
Key switches provide a reliable and secure means of controlling electrical circuits or systems.
Their use is prevalent in various applications, ranging from security systems to industrial control,
where physical key control is desired for authorized access and operation.
3.4) Relay
A relay is an electrically operated switch that uses an electromagnet to control the opening and
closing of its contacts. Here are some key advantages of using relays in a circuit:
Electrical Isolation: One of the primary advantages of using relays is the electrical isolation they
provide. The control circuit, which typically operates at low voltage and current levels, can be
completely isolated from the higher voltage or current circuit being controlled. This isolation
helps protect sensitive control components from potential voltage spikes, noise, or interference in
the controlled circuit.
Switching High Voltages or Currents: Relays are capable of switching high voltages or currents
that may be beyond the capacity of electronic control components. By using a relay, the low-
power control circuit can safely and effectively control higher-power loads, such as motors,
heaters, or lighting systems. Relay has been shown in the given figure:
Figure 3.4 Relay
Versatility: Relays come in a variety of types and configurations, allowing for versatility in circuit
design. They can be found in single-pole, double-pole, and multiple-pole configurations, as well
as with different contact arrangements, such as normally open (NO) or normally closed (NC)
contacts.
Longevity and Durability: Relays are known for their longevity and durability. They are designed
to handle numerous switching operations without significant wear or degradation. This makes
relays suitable for applications that require frequent switching, such as automation systems or
industrial control.
Fail-Safe Operation: Relays often exhibit fail-safe behavior. In the event of power loss or control
signal failure, the relay typically reverts to a default state. For example, if power is lost, the relay
contacts will return to their normally closed or normally open state, depending on the specific
relay configuration. This fail-safe behavior can enhance safety and system reliability.
Noise Immunity: Relays provide good noise immunity due to their electromechanical operation.
They are less susceptible to electrical noise or transient disturbances compared to solid-state
electronic switches.
Relays offer several advantages in circuit design, including electrical isolation, high
voltage/current switching capability, compatibility, versatility, longevity, and fail-safe operation.
These advantages make relays a popular choice in various applications, ranging from industrial
automation to automotive systems, power distribution, and control systems.
3.5) Battery
A 9V battery refers to a battery that has a nominal voltage of 9 volts. Here are some common uses
and advantages of 9V batteries:
Portable Electronics: 9V batteries are commonly used in a variety of portable electronic devices
such as smoke detectors, remote controls, portable radios, electronic toys, guitar effects pedals,
and small electronic devices.
Test and Measurement Equipment: Many test and measurement devices, such as multimeters and
voltage testers, utilize 9V batteries as a power source. These batteries provide the necessary
voltage to operate these devices reliably.
Audio Equipment: Some audio equipment, particularly smaller devices like microphones,
wireless transmitters, and small amplifiers, are designed to be powered by 9V batteries for
convenience and portability.
Clocks and Timers: Certain clocks, timers, and alarms are designed to run on 9V batteries. These
batteries provide a stable power source for consistent timekeeping and reliable operation.
Voltage Level: The 9V voltage level is higher than that of many other common batteries, such as
AA or AAA batteries. This higher voltage makes 9V batteries suitable for devices that require a
higher voltage to operate.
Compact Size: 9V batteries are typically compact and have a rectangular shape, making them
convenient for use in smaller electronic devices and applications where space is limited.
Availability: 9V batteries are widely available and can be found in most stores that sell batteries.
This availability makes them easily accessible for replacement or purchase.
Easy Installation: 9V batteries are easy to install and replace in devices. They usually have snap
connectors or terminals that allow for quick and convenient installation.
Reliable Power Source: 9V batteries provide a stable and reliable power source for electronic
devices. They are capable of delivering consistent voltage and current, ensuring the proper
functioning of the connected devices.
Portable Power: 9V batteries are portable and can be easily carried around. This makes them
suitable for powering devices when on the go or in situations where a power outlet is not available.
It's important to note that 9V batteries typically have a lower capacity compared to larger batteries
like AA or C batteries. Therefore, they may not be suitable for devices that require high power
consumption or devices that are used extensively. Additionally, proper disposal and recycling of
9V batteries should be practiced to ensure environmental sustainability and safety.
Chapter 4: Circuit Designing
Creating a circuit diagram is a visual representation of an electrical circuit using
standardized symbols to depict various components and their interconnections. Here's a
step-by-step guide on how to make a circuit diagram:
Identify the components: Determine the electrical components that will be included in the
circuit diagram. This may include resistors, capacitors, diodes, transistors, integrated
circuits, and power sources. Also, consider any specific sensors, switches, or connectors
that are part of the circuit.
Understand the connections: Determine how the components are connected within the
circuit. Identify the flow of current, voltage sources, ground connections, and any
branching or parallel connections. This step requires a good understanding of the circuit's
functionality and the relationships between the components.
Choose the symbols: Familiarize yourself with the standard symbols used in circuit
diagrams. These symbols represent different components and functions in a circuit.
Ensure you use the correct symbols for each component to maintain consistency and
readability.
Start with a blank canvas: Begin with a blank canvas or a grid paper to draw your circuit
diagram. You can also use specialized software or online tools for creating digital circuit
diagrams. If using paper, consider using a ruler or straight edge to maintain neatness and
accuracy.
Place components and symbols: Place the components and symbols on the canvas
according to their positions within the circuit. Use the appropriate symbols for each
component, ensuring they are easily identifiable and distinguishable from one another.
Label each component for clarity.
Draw connections: Draw lines or wires to indicate the connections between the
components. Use straight lines for horizontal or vertical connections and curves for
diagonal connections. Ensure that the lines do not intersect unless there is an intentional
connection.
Add labels and annotations: Include labels and annotations to provide additional
information about the circuit. This may include indicating voltage values, resistor values,
or specifying pin numbers of integrated circuits. Use text or callouts to describe the
circuit's functionality or provide any necessary instructions.
Organize the layout: Arrange the components and connections in a logical and organized
manner. Group related components together and minimize the crossing of wires to
improve the diagram's readability. Consider aligning components vertically or
horizontally for a clean layout.
Review and refine: Step back and review the circuit diagram to ensure accuracy and
clarity. Check for any missing connections, incorrect symbols, or ambiguous elements.
Refine the diagram as needed to enhance its comprehensibility and correctness.
Document and share: Once the circuit diagram is finalized, document it by creating a
digital or physical copy. Share it with relevant stakeholders, colleagues, or collaborators
to facilitate communication and understanding.
In our circuit diagram the connection is made as shown in this figure we used fritzing
software to build the setup.
When designing a circuit using software, there are several precautions you should take to
ensure accuracy and prevent errors. Here are some precautions to consider:
Understand software capabilities: Familiarize yourself with the features and capabilities
of the software you are using for circuit design. Read the documentation or tutorials
provided by the software manufacturer to ensure you are utilizing the software to its full
potential.
Start with a clear design plan: Before diving into the software, have a clear understanding
of the circuit you want to design. Plan out the components, connections, and overall
functionality of the circuit to guide your design process.
Use correct component symbols: Ensure you select and use the correct symbols for each
component in your circuit. The software should have a library of standard symbols, and
it is essential to choose the appropriate ones to accurately represent the components.
Validate component parameters: When adding components to the circuit, verify and enter
the correct parameters such as resistance, capacitance, voltage ratings, or current ratings.
Using incorrect parameters can lead to faulty designs or simulation results.
Utilize design rule checks: Most circuit design software includes design rule checking
capabilities. Enable these checks to identify any potential design errors or violations, such
as overlapping components, improper routing, or inconsistent connections. Address any
flagged issues before proceeding.
Simulate and verify functionality: Take advantage of simulation features available in the
software to test the functionality of your circuit. Run simulations to verify that the circuit
behaves as expected, produces the desired outputs, and meets the intended specifications.
Document the design: Keep thorough documentation of your circuit design, including
component values, specifications, simulation results, and any other relevant information.
This documentation serves as a reference and aids in troubleshooting or modifications in
the future. Seek peer review: If possible, have your circuit design reviewed by a peer or
a knowledgeable colleague. Another set of eyes can catch errors or provide valuable
feedback to improve the design. Regularly save and backup your work: Save your design
progress regularly to prevent data loss in case of software crashes or system failures.
Additionally, maintain backups of your circuit design files to ensure you have multiple
copies in case of any unforeseen circumstances. By taking these precautions, you can
minimize errors, ensure the accuracy of your circuit design, and optimize the functionality
and reliability of your circuits.
Figure 4 The circuit diagram is as formed using the Fritzing software and simulated
properly to know the functioning of the circuit.
After designing a circuit, there are several subsequent steps to consider depending on your
specific goals and requirements. Here are some common next steps:
Circuit Simulation: Run a simulation of the designed circuit using the software or
dedicated simulation tools. This allows you to verify the functionality, performance, and
behavior of the circuit before implementing it physically. Analyze simulation results to
ensure that the circuit meets the desired specifications.
Design Rule Check (DRC): Perform a design rule check to ensure that the layout adheres
to the specific design rules and constraints of the PCB fabrication process. The DRC
verifies that there are no clearance violations, signal integrity issues, or other
manufacturing constraints that could affect the functionality or reliability of the circuit.
Prototype Construction: Based on the circuit design and layout, construct a physical
prototype of the circuit. This may involve assembling the components on a breadboard or
creating a custom PCB through fabrication processes. Ensure that all connections are
accurately made, and double-check component placements and polarities. Testing and
Debugging: Once the prototype is ready, perform thorough testing to validate the
functionality and performance of the circuit. Use appropriate measurement tools and
techniques to verify signal levels, voltage/current outputs, and any specific behavior or
characteristics. Identify and address any issues or bugs encountered during testing
through systematic debugging.
Design Optimization: Analyze the performance of the circuit and identify areas for
optimization. This could involve improving efficiency, reducing power consumption,
enhancing signal quality, or addressing any design limitations. Make iterative
modifications to the circuit design, simulation, or physical implementation to achieve the
desired optimization goals. Documentation and Reporting: Maintain comprehensive
documentation of the circuit design, including schematic diagrams, PCB layouts,
simulation results, testing procedures, and any modifications made during optimization.
This documentation serves as a reference for future development, troubleshooting, or
sharing with collaborators, stakeholders, or clients.
Production and Deployment: Once the circuit design is finalized and validated, it can be
prepared for production. This involves ordering the necessary components, coordinating
with manufacturers for PCB fabrication and assembly, and ensuring quality control
measures are in place. Follow appropriate production processes and standards to ensure
consistency and reliability in the manufactured circuits. Remember that the subsequent
steps may vary depending on the specific application, complexity of the circuit, and
project requirements. It is important to follow industry best practices, consult with experts
if needed, and iterate on the design and implementation process to achieve the desired
outputs.
Chapter 5: Coding and Implementation
To provide a basic overview of coding for the ESP8266 module, it is important to note
that the ESP8266 can be programmed using various programming languages, including
Arduino IDE, Micro Python, and Lua. In this case, I will provide an example using
Arduino IDE, which is a popular choice for programming the ESP8266.
#defineRelayPin15 //D1
#defineRelayPin24 //D2
#defineRelayPin314 //D5
#defineSwitchPin110 //SD3
#defineSwitchPin20 //D3
#defineSwitchPin313 //D7
#defineSwitchPin43 //RX
#definewifiLed 16 //D0
#defineVPIN_BUTTON_1 V1
#defineVPIN_BUTTON_2 V2
#defineVPIN_BUTTON_3 V3
#defineVPIN_BUTTON_4 V4
#defineVPIN_BUTTON_5 V5
intwifiFlag = 0;
#defineBLYNK_TEMPLATE_ID"TMPLjg1BzihH"
#defineBLYNK_TEMPLATE_NAME"iot solar tracker"
#defineBLYNK_AUTH_TOKEN"O3bWSTczdRjDvhYpmF9T67LOka3A6TWW"
#defineBLYNK_PRINT Serial
#include<ESP8266WiFi.h>
#include<BlynkSimpleEsp8266.h>
voidrelayOnOff(intrelay){
switch(relay){
case1:
if(toggleState_1 == 1){
digitalWrite(RelayPin1, LOW); // turn on relay 1
toggleState_1 = 0;
Serial.println("Device1 ON");
}
else{
digitalWrite(RelayPin1, HIGH); // turn off relay 1
toggleState_1 = 1;
Serial.println("Device1 OFF");
}
delay(100);
break;
case2:
if(toggleState_2 == 1){
digitalWrite(RelayPin2, LOW); // turn on relay 2
toggleState_2 = 0;
Serial.println("Device2 ON");
}
else{
digitalWrite(RelayPin2, HIGH); // turn off relay 2
toggleState_2 = 1;
Serial.println("Device2 OFF");
}
delay(100);
break;
case3:
if(toggleState_3 == 1){
digitalWrite(RelayPin3, LOW); // turn on relay 3
toggleState_3 = 0;
Serial.println("Device3 ON");
}
else{
digitalWrite(RelayPin3, HIGH); // turn off relay 3
toggleState_3 = 1;
Serial.println("Device3 OFF");
}
delay(100);
break;
case4:
if(toggleState_4 == 1){
digitalWrite(RelayPin4, LOW); // turn on relay 4
toggleState_4 = 0;
Serial.println("Device4 ON");
}
else{
digitalWrite(RelayPin4, HIGH); // turn off relay 4
toggleState_4 = 1;
Serial.println("Device4 OFF");
}
delay(100);
break;
voidwith_internet(){
//Manual Switch Control
if(digitalRead(SwitchPin1) == LOW){
delay(200);
relayOnOff(1);
Blynk.virtualWrite(VPIN_BUTTON_1, toggleState_1); // Update
Button Widget
}
elseif(digitalRead(SwitchPin2) == LOW){
delay(200);
relayOnOff(2);
Blynk.virtualWrite(VPIN_BUTTON_2, toggleState_2); // Update
Button Widget
}
elseif(digitalRead(SwitchPin3) == LOW){
delay(200);
relayOnOff(3);
Blynk.virtualWrite(VPIN_BUTTON_3, toggleState_3); // Update
Button Widget
}
elseif(digitalRead(SwitchPin4) == LOW){
delay(200);
relayOnOff(4);
Blynk.virtualWrite(VPIN_BUTTON_4, toggleState_4); // Update
Button Widget
}
// else if (digitalRead(SwitchPin5) == LOW){
// delay(200);
// relayOnOff(5);
// Blynk.virtualWrite(VPIN_BUTTON_5, toggleState_5); // Update
Button Widget
}
voidwithout_internet(){
//Manual Switch Control
if(digitalRead(SwitchPin1) == LOW){
delay(200);
relayOnOff(1);
}
elseif(digitalRead(SwitchPin2) == LOW){
delay(200);
relayOnOff(2);
}
elseif(digitalRead(SwitchPin3) == LOW){
delay(200);
relayOnOff(3);
}
elseif(digitalRead(SwitchPin4) == LOW){
delay(200);
relayOnOff(4);
}
//else if (digitalRead(SwitchPin5) == LOW){
// delay(200);
// relayOnOff(5);
// }
}
BLYNK_CONNECTED(){
// Request the latest state from the server
Blynk.syncVirtual(VPIN_BUTTON_1);
Blynk.syncVirtual(VPIN_BUTTON_2);
Blynk.syncVirtual(VPIN_BUTTON_3);
Blynk.syncVirtual(VPIN_BUTTON_4);
Blynk.syncVirtual(VPIN_BUTTON_5);
}
BLYNK_WRITE(VPIN_BUTTON_1){
toggleState_1 = param.asInt();
digitalWrite(RelayPin1, toggleState_1);
}
BLYNK_WRITE(VPIN_BUTTON_2){
toggleState_2 = param.asInt();
digitalWrite(RelayPin2, toggleState_2);
}
BLYNK_WRITE(VPIN_BUTTON_3){
toggleState_3 = param.asInt();
digitalWrite(RelayPin3, toggleState_3);
}
BLYNK_WRITE(VPIN_BUTTON_4){
toggleState_4 = param.asInt();
digitalWrite(RelayPin4, toggleState_4);
}
BLYNK_WRITE(VPIN_BUTTON_5){
toggleState_5 = param.asInt();
digitalWrite(RelayPin5, toggleState_5);
}
boolisconnected = Blynk.connected();
if(isconnected == false){
wifiFlag = 1;
digitalWrite(wifiLed, HIGH); //Turn off WiFi LED
}
if(isconnected == true){
wifiFlag = 0;
digitalWrite(wifiLed, LOW); //Turn on WiFi LED
}
}
voidsetup()
{
Serial.begin(9600);
pinMode(RelayPin1, OUTPUT);
pinMode(RelayPin2, OUTPUT);
pinMode(RelayPin3, OUTPUT);
pinMode(RelayPin4, OUTPUT);
pinMode(RelayPin5, OUTPUT);
pinMode(wifiLed, OUTPUT);
pinMode(SwitchPin1, INPUT_PULLUP);
pinMode(SwitchPin2, INPUT_PULLUP);
pinMode(SwitchPin3, INPUT_PULLUP);
pinMode(SwitchPin4, INPUT_PULLUP);
// pinMode(SwitchPin5, INPUT_PULLUP);
WiFi.begin(WIFI_SSID, WIFI_PASS);
timer.setInterval(3000L, checkBlynkStatus); // check if Blynk server is
connected every 3 seconds
Blynk.config(AUTH);
}
voidloop()
{
if(WiFi.status() != WL_CONNECTED)
{
Serial.println("WiFi Not Connected");
}
else
{
Serial.println("WiFi Connected");
Blynk.run(); }
timer.run(); // Initiates SimpleTimer
if(wifiFlag == 0)
with_internet();
else
without_internet();
}
In the setup () function, the serial communication is initialized, and the ESP8266 attempts
to connect to the specified Wi-Fi network using the provided SSID and password. It then
waits until it successfully establishes a connection and prints the IP address to the serial
monitor.
In the loop () function, you can add your own code to perform the desired functionality.
This is where you can implement your vehicle security features, cloud communication,
or any other custom logic for your project.
Keep in mind that this is just a basic example, and you can expand upon it to add more
functionality based on your specific requirements. Additionally, you may need to install
the necessary libraries for additional features or sensors you plan to use in your project.
It's important to refer to the ESP8266 documentation and the specific libraries you intend
to use for detailed information and instructions on how to program the module effectively.
CONCLUSION
In conclusion, the vehicle security system using cloud services offers numerous benefits
and advancements in enhancing the security and monitoring capabilities of vehicles. By
leveraging cloud computing technologies, such as the integration of the ESP8266 module
and Blynk cloud framework, the system enables real-time communication, remote
monitoring, and control of the vehicle's security features.
The system's block diagram and circuit design allow for the integration of various
components such as sensors, actuators, and the ESP8266 module, enabling seamless
connectivity and data exchange with the cloud platform. The use of relays and key
switches further enhances security by providing control and access restriction
mechanisms. The Blynk cloud application provides a user-friendly interface for
controlling and monitoring the vehicle security system through a mobile app. Its ease of
use, customization options, and community support make it an ideal choice for
developing IoT projects.
The future scope of the vehicle security system using cloud services is promising. Here
are some potential areas for future development and improvement: Enhanced Security
Features: Integration of advanced security features such as biometric authentication,
facial recognition, or voice recognition can further strengthen the vehicle security system.
These technologies can provide an additional layer of security and prevent unauthorized
access.
Geolocation and Geo-fencing: Utilizing GPS technology and geo-fencing capabilities can
provide an added layer of security. The system can alert the owner or send notifications
when the vehicle moves outside a predefined area, indicating potential theft or
unauthorized usage. Integration with Emergency Services: Integrating the system with
emergency services can enable automatic alerts and assistance during emergencies. In the
event of a collision or theft, the system can automatically notify emergency services and
provide them with relevant information, such as the vehicle's location and condition.
Cloud Data Analytics and Insights: Leveraging cloud data analytics can provide valuable
insights into vehicle usage patterns, security events, and maintenance requirements. This
data can help optimize security measures, identify potential vulnerabilities, and improve
overall system performance. In conclusion, the vehicle security system using cloud
services offers a robust and scalable solution for enhancing the security of vehicles. With
ongoing advancements in IoT, cloud computing, and AI technologies, there is a vast
potential for further development and innovation in this field, leading to more intelligent
and secure vehicle security systems in the future.
Scalability: Cloud-based security systems can easily scale up or down based on the needs
of the organization. As the number of users, devices, or locations increases, the cloud
infrastructure can accommodate the growth without the need for significant hardware or
infrastructure upgrades.
Automatic Software Updates and Maintenance: Cloud service providers handle software
updates, patches, and maintenance tasks, ensuring that the security system is up-to-date
with the latest features and security enhancements. This eliminates the burden of manual
updates and reduces the risk of vulnerabilities due to outdated software.
2.) H. Song, S. Zhu, and G. Cao, “Svats: A sensor-network-based vehicle anti-theft system,”
IEEE INFOCOM 2008, pp.2128-2136, April.2018.
3.) Shiqing Liu, “Integration and Application Design of GPS and GSM System,”
Heilongjiang Science and Technology Information, vol.23, no.12, pp.85, Dec.2010.
4.) SeokJu Lee; Tewolde, G.; Jaerock Kwon, "Design and implementation of vehicle
tracking system using GPS/GSM/GPR technology and smartphone application," Internet
of Things (WFIoT), 2014 IEEE World Forum on, vol., no., pp.353,358, 6-8 March 2015.