Project - Book-EEE - 17th Batch - Arduino Based Fire Fighting Roboting Car
Project - Book-EEE - 17th Batch - Arduino Based Fire Fighting Roboting Car
This project was presented in partial fulfillment of the requirement for the degree Bachelor
of Science in Electrical and Electronic Engineering (EEE)
Bangladesh 2023
HAMDARD UNIVERSITY BANGLADESH
Hamdard City of Science, Education & Culture, Gazaria, Munshiganj-1510, Bangladesh
Submitted By
Name ID
Supervisor
Sabbir Ahmed
Lecturer
July 2023
© Copyright 2023
ii
Project/Thesis Assessment Committee:
Chairman
………………….
Dean,
Member
........................................
Sabbir Ahmed
Lecturer,
Member-Secretary
....................................
Asfaqur Rahman
Head of the department,
iii
HAMDARD UNIVERSITY BANGLADESH
Department of Electrical and Electronic Engineering
Candidate Declaration
This is to certify that the work presented in this project is the outcome of the investigation
carried out by the following student under supervision of Sabbir Ahmed, Lecturer of the
Department Electrical and Electronic Engineering (EEE), Faculty of Science, Engineering
and Technology. Hamdard University Bangladesh.
It also declared that neither of this project nor any part has been submitted anywhere else
for the award of any degree.
…………………….. …….……….………..
Md. Monir Hossen M Nazmul Hasan Mazumder
ID No. 555192013 ID No. 555192030
……………………..
Md. Shah Alam
ID No. 555192003
iv
ACKNOWLEDGEMENT
The success and final outcome of this project required a lot of guidance and assistance from
many people and I am extremely privileged to have got this all along the completion of our
project. All that we have done are only due to such supervision and assistance and we would
not forget to thank them.
I would like to express our special gratitude and thanks to our supervisor Sabbir Ahmed,
Lecturer, Department of EEE, Hamdard University Bangladesh, for his brilliant advice,
guidance and encouragement, co-operators and supervision at all to complete this project.
I respect and thank to our department for providing us an opportunity to do the project work
and giving us all support and guidance, which made us complete the project duly. We are
extremely thankful to Asfaqur Rahman, Lecturer, Head of the Department of EEE,
Hamdard University Bangladesh.
We are thankful to and fortunate enough to get constant encouragement, support and
guidance from all Teaching staffs of EEE which helped us in successfully completing our
project work. Also, we would like to extend our sincere esteems to all staff in laboratory for
their timely support.
We would like to express our gratitude towards our parents, friends for their kind
cooperation and encouragement which help me in completion of this project.
Finally, we would like to express our hearties gratefulness to Almighty Allah for heavenly
blessing without which its world not imaginable to complete this project successfully.
v
ABSTRACT
A fire outbreak is a hazardous act that leads to numerous consequences. Detecting a fire at
an early stage and extinguishing it can aid in prevention of various accidents. Till now we
rely on human resource. This often leads to risking the life of that person. Therefore, fire
security becomes an important aspect to save human lives. In this paper a fire extinguishing
robot has been proposed and designed which detects the fire location and extinguish fireby
using sprinklers on triggering the pump. This robot uses three flame sensors for accurate fire
detection. This proposed model of Fire Extinguishing Robot using Arduino used to detect
presence of fire and extinguishing it automatically without any human interference. It
contains gear motors and motor driver to control the movement of robot when it detects any
presence of fire and will automatically start the water pump to extinguish that fire breakout.
This model robot has a water ejector which is capable of ejecting water at the fire breakout
place. The water ejector pipe can be move towards the required direction using servo motor.
The whole operation is controlled by an Arduino MINI micro-controller. [1]
vi
TABLE OF CONTENTS
Title Page
Declaration Iv
Acknowledgement V
Abstract Vi
Introduction 1
Project Objective 1
Project Methodology 1
Project Organization 1
vii
2.4.1 Physical Characteristics of Arduino 11-12
2.5 ATmega328 15
2.11 BO Motors 20
2.13 Breadboard 21
3.1 Introduction 25
3.6 Libraries 31
viii
3.7 Making Pins as Input or Output 31
4.5 Advantages 36
Conclusion 36
References 37
Appendix 38-42
List of Figures
Chapter No. Name of Figure Page
ix
Fig.2.9 Servo Motors 16
Fig.2.10 Submersible Mini Water Pump 17
Fig.2.13 Relay 18
Fig.2.15 BO Motors 20
Fig.2.17 Breadboard 21
x
List of Tables
Chapter No. Name of Figure Page
xi
Introduction
As the robotic field is developed a lot, human interaction is made less and the robots are
widely used for the purpose of safety. Fire accidents have become common in our day-to-
day life and sometimes it may lead to dangerous problems which will be harder for the
firemen for protecting the human life. In order to avoid these cases, this robot is used to
guard human lives, surroundings and wealth from the fire accidents. For engineering
students, who are interested in robotics, this firefighting robot project is an advanced
project. The Bluetooth technology for remote operation and Arduino Mini are incorporated
in this project. [2]
Project Objective
The objectives of this project are follows:
• Design and development of low cost firefighting robot.
• Run automatically firefighting robot.
• To determine the use of multiple sensor for various sensing on the robot.
• To reduce and save human life especially fireman who expose to danger while
extinguish the fire.
Research Methodology
The theme of this paper is to automatically sense the environmental fire and extinguish it
without human intervention. The methodology is divided into three parts. The first part is on
the design structure, followed by hardware description and the finally on the programming
design. All these three parts were assembled together and experiments were then performed
to build a system that can extinguish the fire that was carried out.
Project Organization
The contents of the thesis are organized into four chapters. In Chapter one it is described
the Overview of fire Fighting robotics car. Chapter two presents in brief hardware
development in Arduino (Mini), microcontroller system, ATmega328, power supply, flame
sensor, Relay and servo Motors. Chapter three described brief software development and
working system of Arduino IDE. In chapter four description is given of the Arduino based
Fighting robotics car. Finally, a brief conclusion of the entire project has been included and
future scopes of this project have been analyzed.
1
Chapter 1
An Overview of Fire Fighting Robotics Car
1.1 Introduction
One of the most important Parameter in fire disaster is life, i.e. lives lost in saving someone
else life. It is sometimes impossible for fire-fighters personnel to access the site of a fire
because of explosive materials, smoke, and high temperatures. A fast response to detect the
fire can avoid many disastrous things.
From the given statics (Fig.1.1), it is observed that fire can take place at domestic as well
as at industrial level. A normal spark can generate a massive fire breakout. Not only lives of
industrial people but also the lives of domestic’s people are at risk because of poor fire
management system. Fire can take many lives and can injure many people for their life time.
But it can be avoided using proper fire controlling methods.
For such environments, fire-fighting robot is proposed. In today’s generation a lot of robots
are proposed and designed to remove the human factor from dangerous and deadly work.
The use of robots is becoming very common that safely completes the labour intensive or
deadly work for human beings. A Fire Extinguishing Robot is based on IOT Technology.
In Fire
2
Extinguishing robot, we intend to build a system that could extinguish a small flame by sensing
and moving to the location itself.
It will automatically detect the fire with the help of flame sensors. Once it detects the fire
breakout location, it navigates itself accordingly to reach the fire source and extinguishes the
fire by using built-in fire extinguishing system. For fire detection it is using three flame
sensors. First one for the left direction, second one for the forward direction and third one
for the right direction. Fire extinguishing system will get activated when fire detection
system detects fire. It then reaches the breakout point and water pump will start ejecting the
water when it detects fire. The key features of this system is to provide surveillance of fire so
that major fire accidents can be prevented and loss of human lives gets minimized. [2]
The main concept behind the Arduino based firefighting robotics car is very simple. The
main brain of this project is the Arduino, but in-order to sense fire we use the Fire sensor
module (flame sensor) which is shown in figure 1.2.
As you can see these sensors have an IR Receiver (Photodiode) which is used to detect the
fire. How is this possible? When fire burns it emits a small amount of Infra-red light, this
light will be received by the IR receiver on the sensor module. Then we use an Op-Amp to
check for change in voltage across the IR Receiver, so that if a fire is detected the output
pin (DO) will give 0V(LOW) and if the is no fire the output pin will be 5V(HIGH).
So, we place three such sensors in three directions of the robot to sense on which
direction the fire burning is shown in figure 1.3.
3
Figure 1.3 IR Flame Sensor Position
We detect the direction of the fire we can use the motors to move near the fire by driving our
motors through the L293D module. When near a fire we have to put it out using water. Using
a small container, we can carry water, a 5V pump is also placed in the container and the whole
container is placed on top of a servo motor so that we can control the direction in which the
water has to be sprayed. Let’s proceed with the connections now. [3]
Fig. 1.4 shows the demo project of firefighting robotics car. To check the output of the robot
in steps rather than running it all together for the first time. It is recommended You can build
the robot up to the servo motor and check if it is able to follow the fire successfully. Then you
can check if the pump and the servo motor are working properly. Once everything is working
as expected you can run the program below and enjoy the complete working of the fire fighter
robot.
4
Figure 1.4 Firefighting Robots
The maximum distance to which the fire can be detected depends on the size of the fire, for a
small matchstick the distance is relatively less. You can also use the potentiometers on top of
the modules to control the sensitivity of the robot. I have used a power bank to power the robot
you can use a battery or even power it with a 12V battery.
Despite the hazards of the job, firefighters selflessly serve a vital role in their communities,
and their safety is of the utmost importance. The future of firefighting is always evolving, and
new firefighting technology has helped keep firefighters safe and increased their ability to
more effectively put out blazes in many different settings.
5
Arguably, the most impactful and significant of these recent technological advances are
firefighting robots. Since they were first introduced by Howe & Howe Technologies,
firefighting robots have been a game-changer in helping battle blazes of all kinds.
For anybody looking to rise through the firefighting ranks, becoming familiar with all the
new technology to fight fires is crucial. [3]
The Thermite was designed to fight fires in environments where it is too dangerous for humans
to go, such as airplane fires, nuclear reactors and other high-hazard situations. In addition to
going into dangerous scenarios, the Thermite is also more mobile and agile, which provides
fire departments with an added tool in their arsenal.
Since the initial Thermite was developed by Howe & Howe, they expanded the technology
considerably. Look no further than the Thermite RS3, which boats a flow rate of 2,500 gallons
per minute and has the strength to push vehicles from its path and pull up to 8,000 pounds.
Although the Thermite was the original, it’s certainly not the only robot that has been called
into battle blazes. Firefighting robots became more well-known in 2019 when crews used
them to help battle the flames at the Notre Dame Cathedral in Paris. The Paris Fire Brigade
used the Colossus robot. The tank-like technology navigated the centuries-old structure and
provided vital information to firefighters on the outside. In an interview with the Institute of
Electrical and Electronics Engineers, Cyril Kabbara, cofounder of Shark Robotics, explained
how important a role the Colossus played.
“Colossus acts as a kind of technical support station to the firefighting team by supplying
information from its sensors to both the remote pilot and the other firefighters in real-time,”
Kabbara said. “This is an essential function in the dangerous circumstances the workers face
when they enter an emergency scene, and it’s very important that all the information is in the
same place, as opposed to different sensors that the team has to carry with them into the
building.”
6
While not every fire department will encounter such daunting challenges, firefighting robots
provide many benefits. In 2020, the Los Angeles Fire Department became the first department
in the United States to debut this game-changing technology.
“I can afford to lose one of these wonderful machines. I cannot afford to lose a firefighter,”
Terrazas told the newspaper. Whether it’s the RS3, Colossus robot or any future technology,
it’s clear that firefighting robots have changed the industry and are helping keep firefighters
and citizens safe. [4]
7
Chapter 2
Hardware Development of this Project
2.1 Introduction
The hardware part is one of the crucial parts in the development of firefighting robot. It
includes Arduino MINI, IR flame sensors, servo motors, submersible water pump, motor
driver, mini breadboard, BO motors, and rubber wheels. Fig 3 shows the block diagram of
firefighting robot which consists of three IR flame sensors as the input of the system. Arduino
MINI is used as a micro-controller that connects other components. L293D Motor driver is
used to drive motors and is capable of running two DC motors (Left DC motor and Right DC
motor) at the same time. [4]
8
2.3 IR Flame Sensor
Fig. 2.2 shows the IR Flame Sensor. The IR flame sensor senses the environment and detects
the presence of fire or flame. The module is based on the IR receiver and basically detects the
presence of flammable and harmful gases likes nitrogen, hydrogen, carbon mono oxide. The
signal detection capacity is adjustable. The robot contains three flame Sensor [5]
9
piece of software, or IDE (Integrated Development Environment) that runs on our computer,
used to write and upload computer code to the physical board.
The Arduino platform has become quite popular with people just starting out with electronic,
and for good reason. Unlike most previous programmable circuit boards, the Arduino does
not need a separate piece of hardware (called a programmer) in order to load new code onto
the board -- we can simply use a USB cable. Additionally, the Arduino IDE uses a simplified
version of C++, making it easier to learn to program. Finally, Arduino provides a standard
form factor that breaks out the functions of the micro-controller into a more accessible
package. [5]
Figure 2.4 Comparing the size of a standard Arduino Uno with the (aptly named) Pro
Mini
10
Table 2.1 shows the Arduino Uno Technical Specifications:
Microcontroller ollerATmega328P – 8-bit AVR
family Microcontroller
Operating Voltage 5V
SRAM 2 KB
EEPROM 1 KB
11
Figure 2.5 Physical Configuration of Arduino pro mini
So, what differentiates the Arduino Pro Mini from the Arduino Uno? Well, the most obvious
difference is the form factor. The Pro Mini's pretty...mini, measuring in at just 1.3x0.70". It's
about ⅙th the size of the Arduino Uno. The compact size is great for projects where you may
need to fit the Arduino into a tiny enclosure, but it also means that the Pro Mini is not physically
compatible with Arduino shields (you could still hard-wire the Mini up to any Arduinoshield).
The Mini packs almost as much microprocessor-punch as the regular Arduino, but there are
a few major hardware changes you should be aware of before you start adapting your project
to the Mini. The first glaring hardware difference is the voltage that the Mini operates at:
3.3V. Unlike the Arduino Uno, which has both a 5V and 3.3V regulator on board, the Mini
only has one regulator. This means that if you've got peripherals that only work at 5V, you
might have to do some level shifting before you hook it up to the Pro Mini (or you could go
for the 5V variant of the Pro Mini).
Another major variation from the standard Arduino lies in the speed at which the ATmega328
runs. The Pro Mini 3.3V runs at 8MHz, half the speed of an Arduino Uno. We put a slower
resonator on the Mini to guarantee safe operation of the ATmega. That said, don't let the slower
speed scare you away from using the Mini; 8MHz is still plenty fast, and the Mini will still
be capable of controlling almost any project the Arduino Uno can. [7]
12
2.4.2 Block Diagram
The block diagram of Arduino Uno is shown in figure 2.6
The above Arduino block diagram shows the important modules on an Arduino UNO board.
When you think about the Arduino board that comes to your mind might be that of an
Arduino UNO or an Arduino Nano. That is because they are the most popular board among
the community. That doesn’t mean the Arduino is limited to the capabilities of an
ATMEGA328 chip. There are plenty of board variants available, with an entirely different
set of features like different microcontrollers, layout, number of I/O ports, etc.
13
The Arduino Pro Mini was designed and is manufactured by Spark Fun Electronics.
Table 2.2 Arduino Mini Pin Description. [7]
Power Vin, 3.3V, 5V, GND Vin: Input voltage to Arduino when using an
external power source.
5V: Regulated power supply used to power
microcontroller and other components on the
board.
3.3V: 3.3V supply generated by on-board voltage
regulator. Maximum current draw is 50mA.
GND: ground pins.
Serial 0(Rx), 1(Tx) Used to receive and transmit TTL serial data.
14
2.1 ATmega328
ATMEGA328P is high performance, low power controller from Microchip. ATMEGA328P is
an 8-bit microcontroller based on AVR RISC architecture. It is the most popular of all AVR
controllers as it is used in ARDUINO boards. The ATmega328 is a single chip microcontroller
created by Atmel in mega AVR family (later microchip Technology acquired Atmel in 2016).
It has a modified Harvard architecture 8-bit RISC processor core. The Atmel 8-bit AVR RISC-
based microcontroller combines 32 KB ISP flash memory with read-while write capabilities,
1 KB EEPROM, 2KB SRAM, 23 general purpose I/O lines, 32 general purpose working
registers, three flexible timer/counters with compare moods, internal and external interrupts,
serial programmable USART, a byte-oriented 2-wire serial interface, SPI serial port 6channel
10-bit A/D converter (8-channels in TQFP and QFN/MLF packages), programmable watchdog
timer with internal oscillator and five software selectable power saving mood. The device
operates between 1.8-5.5 volts. The device archives throughput approaching 1MIPS per
MHz’s. [8]
15
2.1.2 Block Diagram of ATmega328
The block diagram of ATmega328 is shown in figure 2.8
16
Figure 2.10 Submersible Mini Water Pump
Table 2.3 shows the pin description of FTDI Interface adapter and Fig. 2.12 shows the FTDI
Interface Adapter the Atmega16U2-based USB-to-Serial converter, and the USB connector
that goes with it. All of the USB circuitry had to be eliminated for us to make the Pro Mini as
small as possible. The absence of this circuit means an external component, the FTDI Basic
Breakout or any USB-to-serial converter, is required to upload code to the Arduino Pro Mini.
Note: Besides the FTDI that is used in this tutorial, there are other USB-to-serial converters
17
Mini. Make sure to check out the board and install the respective driver for your USB-to-
serial converter. [11]
2.6 Relay
A power relay module is an electrical switch that is operated by an electromagnet. The
electromagnet is activated by a separate low-power signal from a micro controller. When
activated, the electromagnet pulls to either open or close an electrical circuit. A simple relay
connection is shown in figure 2.13.
18
Figure 2.13 Relay
A simple relay consists of wire coil wrapped around a soft iron core, or solenoid, an iron yoke
that delivers a low reluctance path for magnetic flux, a movable iron armature and one or more
sets of contacts. The movable armature is hinged to the yoke and linked to one or more set of
the moving contacts. The internal design of relay is shown in the figure 2.14.
Held in place by a spring, the armature leaves a gap in the magnetic circuit when the relay is
deenergized. While in this position, one of the two sets of contacts is closed while the other
set remains open. When electrical current is passed through a coil, it generates a magnetic
field that in turn activates the armature. This movement of the movable contacts makes or
breaks a connection with the fixed contact. When the relay is de-energized, the sets of contacts
that were closed, open and breaks the connection and vice versa if the contacts were open.
When switching off the current to the coil, the armature is returned, by force, to its relaxed
position. This force is usually provided by a spring, but gravity can also be used in certain
applications. Most power relays are manufactured to operate in a quick manner. Table 2.4
shows the pin description of single channel relay module.
19
Table 2.4 Single-Channel Relay Module Pin Description:
2 Ground 0V reference
2.7 BO Motors
Fig 2.15 shows the BO Motor. BO Motor is a dual shaft motor having 300rpm.It converts
electrical energy into mechanical energy. It is the replacement to our metal gear DC motors.
Our robot uses four dual shaft motors. [11]
Fig. 2.16 shows the Lithium-Ion Battery. A battery is a device that can be used to store
energy. The way the battery works is when the battery is in the process of charging, the
battery will
20
convert electrical energy into chemical energy and when used the battery will convert the
stored chemical energy into electrical energy.
2.9 Breadboard
A breadboard is a widely used tool to design and test circuit. Do not need to solder wires and
components to make a circuit while using a bread board. It is easier to mount components &
reuse them. Since, components are not soldered we can change our circuit design at any point
without any hassle. It consists of an array of conductive metal clips encased in a box made of
white ABS plastic, where each clip is insulated with another clips. There are a number of holes
on the plastic box, arranged in a particular fashion. A typical bread board layout consists of
two types of regions also called strips. Bus strips and socket strips. Bus strips are usually used
to provide power supply to the circuit. It consists of two columns, one for power voltage and
other for ground. Socket strips are used to hold most of the components in a circuit. Generally,
it consists of two sections each with 5 rows and 64 columns. Every column is electrically
connected from inside is shown in figure.2.17.
21
2.10 Circuit Diagram
The following fig. 2.18 shows the circuit diagram of the Arduino based Firefighting robotics
system.
To check the output of the robot in steps rather than running it all together for the first time. It
is recommended You can build the robot up to the servo motor and check if it is able to follow
the fire successfully. Then you can check if the pump and the servo motor are working
properly. Once everything is working as expected you can run the program below and enjoy
the complete working of the fire fighter robot. The maximum distance to which the fire can
be detected depends on the size of the fire, for a small matchstick the distance is relatively
less. You can also use the potentiometers on top of the modules to control the sensitivity of
the robot. I have used a power bank to power the robot you can use a battery or even power
it with a 12V battery. Project Interface is shown in Fig.2.19.
22
Figure. 2.19 Project Interface
After making the necessary connections as per the circuit diagram, upload the code to Arduino
and turn on the power supply.
The following fig.2.20 shows the flowchart of the Arduino based firefighting robots.
23
2.12 Simulation Drawing of the Proposed System
Figure 2.21 Shows the simulation drawing of the proposed system
24
Chapter 3
Programing of Access Control System
3.1 Introduction
Fire Fighting Robot has developed to reduce human life lost and to develop such a device that
automatically sense fire and extinguish it without human intervention. In this the fireplace is
detected using the IR Flame sensors and are connected to Arduino UNO, which control the
movement of Motor drive that helps the robot to reach the fireplace and extinguishes it with
the pumping mechanisms. In the industry if any fire accident occurs, there is a need of person
to monitor continuously and rectify it. In this process if any time delay takes place irreparable
loss occurs in industry. The firefighting robot continuously monitors the surrounding and
helps in extinguishing the fire.
3.3 Algorithm
Algorithm is the logic for this working process of the Controller. Different condition & loops
applied in the algorithm. It is expressed as flowchart is shown in Fig.3.1.
25
Figure 3.1 Flowchart of the Algorithm
It was developed in Yorkshire, England by Lab center Electronic Ltd and is available in
English, French, Spanish and Chinese languages.
26
The first version of what is now the Proteus Design Suite was called PC-B and was written
by the company chairman, John Jameson, for DOS in 1988. Schematic Capture support
followed in 1990, with a port to the Windows environment shortly thereafter. Mixed mode
SPICE Simulation was first integrated into Proteus in 1996 and microcontroller simulation
then arrived in Proteus in 1998. Shape based auto routing was added in 2002 and 2006 saw
another major product update with 3D Board Visualization. More recently, a dedicated IDE
for simulation was added in 2011 and MCAD import/export was included in 2015. Support
for high-speed design was added in 2017. Feature led product releases are typically biannual,
while maintenance-based service packs are released as it is required.
The micro-controller simulation in Proteus works by applying either a hex file or a debug file
to the microcontroller part on the schematic. It is then co-simulated along with any analog
and digital Electronic connected to it. This enables its use in a broad spectrum of project
prototyping in areas such as motor control, temperature control and user interface design. It
also finds use in the general hobbyist community and, since no hardware is required, is
convenient to use as a training or teaching tool. Support is available for cosimulation of
Proteus 8.6 is a Virtual System Modelling (VSM) that combines circuit simulation, animated
components and microprocessor models to co-simulate the complete microcontroller-based
designs. This is the perfect tool for engineers to test their microcontroller designs before
constructing a physical prototype in real time.
27
This program allows users to interact with the design using on-screen indicators and/or LED
and LCD displays and, if attached to the PC, switches and buttons.
One of the main components of Proteus 8.6 is the Circuit Simulation a product that uses a
SPICE3f5 analogue simulator kernel combined with an event-driven digital simulator that
allow users to utilize any SPICE model by any manufacturer.
Proteus VSM comes with extensive debugging features, including breakpoints, single
stepping and variable display for a neat design prior to hardware prototyping. In summary,
Proteus 8.6 is the program to use when we want to simulate the interaction between software
running on a microcontroller and any analog or digital electronic device connected to it.
Fig 3.3 and 3.4 shows the Arduino IDE and the Arduino IDE contacts respectively. The
Arduino Integrated Development Environment (IDE) is a cross platform Application (for
Windows, macOS, Linux) that is written in functions from C and C++.It is used to write and
upload programs to Arduino compatible boards, but also, with the help of third party cores,
other vendor development boards.
The source code for the IDE is released under the GNU General Public License, version 2.
The Arduino IDE supports the languages C and C++ using special rules of code structuring.
The Arduino IDE supplies a software library from the Wiring project, which provides many
common input and output procedures. User-written code only requires two basic functions,
for starting the sketch and the main program loop, that are compiled and linked with a program
stub main() into an executable cyclic executive program with the GNU toolchain, also
included with the IDE distribution. The Arduino IDE employs the program argued to convert
the executable code into a text file in hexadecimal encoding that is loaded into the Arduino
board by a loader program in the board's firmware.
In October 2019 the Arduino organization began providing early access to a new Arduino Pro
IDE with debugging and other advanced features.
• Menu Bar
• Text Editor
• Output Panel
28
A bar appearing at the top, it is called Menu bar. The menu bar has five different options as
follow:
File- we can open a new window for writing the code or open an existing one. The file option
has 12 different subdivisions:
• NEW- used to open new text editor window to write our code.
• OPEN- used for opening existing written code.
• OPEN RECENT- used for opening recently closed written code.
• SKETCHBOOK- stores the list of codes we have written for our project.
• EXAMPLES- shows the examples which is already stored in the IDE.
• CLOSE- used for closing the main screen window of recent tab.
• SAVE- used to save the recent program.
• SAVE AS- used to save the recent program in our desired folder.
• PAGE SETUP- used for modifying the page with portrait and landscape options.
• PRINT- used for printing our program.
• PREFERENCES- it is page with number of preferences we may want to setup for
our text editor page.
• QUIT- it will quit the whole software at once.
Edit– Used for copying and pasting the code with further modification for font.
29
Tools– Mainly used for testing projects. The Programmer section in this panel is used for
burning a bootloader to the new microcontroller.
Help– In case we are feeling skeptical about software, complete help is available from getting
started to troubleshooting.
The Six Buttons appearing under the Menu tab are connected with the running program as
follow Fig.3.4.
The check mark appearing in the circular button is used to verify the code. Click this once we
have the check mark appearing in the circular button is used to verify the code. Click this
once we have
• The arrow key will upload and transfer the required code to the Arduino board.
• The dotted paper is used for creating a new file.
• The check mark appearing in the circular button is used to verify the code. Click this
once we have written our code.
• The arrow key will upload and transfer the required code to the Arduino board.
• The dotted paper is used for creating a new file.
• The upward arrow is reserved for opening an existing Arduino project.
• The downward arrow is used to save the current running code.
The button appearing on the top right corner is a Serial Monitor – A separate pop-up window
that acts as an independent terminal and plays a vital role for sending and receiving the Serial
Data. we can also go to the Tools panel and select Serial Monitor pressing Ctrl+Shift+M all
at once will open the Serial Monitor.
30
The Serial Monitor will actually help to debug the written Sketches where get a hold of the
program is operating. our Arduino Module should be connected to our computer by USB
cable in order to activate the Serial Monitor.
Need to select the baud rate of the Arduino Board we are using right now. For my Arduino
Uno Baud Rate is 9600, as right the following code and click the Serial Monitor, the output
will show as the image below.
The bottom of the main screen is described as an Output Pane that mainly highlights the
compilation status of the running code: the memory used by the code, and errors occurred in
the program. we need to fix those errors before we intend to upload the hex file into our
Arduino Module.
More or less, Arduino C language works similar to the regular C language used for any
embedded system microcontroller, however, there are some dedicated libraries used for
calling and executing specific functions on the board.
3.6 Libraries
Libraries are very useful for adding the extra functionality into the Arduino Module. There is
a list of libraries we can add by clicking the Sketch button in the menu bar and going to
Include Library. As we click the Include Library and Add the respective library it will on the
top of the sketch with a #include sign. Suppose, Include the EEPROM library, it will appear
on the text editor as #include <EEPROM.h>.
Most of the libraries are preinstalled and come with the Arduino software. However, can also
download them from the external sources.
The digital Read and digital Write commands are used for addressing and making the Arduino
pins as an input and output respectively. These commands are text sensitive i.e., we need to
write them down the exact way they are given like digital Write starting with small “d” and
write with capital “W”. Writing it down with Digital write or digital write won’t be calling or
addressing any function.
31
3.8 How to Select Board of Arduino
In order to upload the sketch, we need to select the relevant board we are using and the ports
for that operating system. As we click the Tools on the Menu, it will open like the figure
below.
• Just we go to the “Board” section and select the board we would like to work on.
Similarly, COM1, COM2, COM4, COM5, COM7 or higher are reserved for the
serial and USB board. we can look for the USB serial device in the ports section of
the Windows Device Manager. Following figure shows the COM4 that we have
used for my project, indicating the Arduino Uno with COM4 port at the right bottom
corner of the screen.
• After correct selection of both Board and Serial Port, click the verify and then
upload button appearing in the upper left corner of the six-button section or we can
go to the Sketch section and press verify/compile and then upload.
• The sketch is written in the text editor and is then saved with the file extension. ion.
It is important to note that the recent Arduino Modules will reset automatically as
we compile and press the upload button the IDE software, however, older version
may require the physical reset on the board.
• As we upload the code, TX and RX LEDs will blink on the board, indicating the
desired program is running successfully.
• The amazing thing about this software is that no prior arrangement or bulk of mess
is required to install this software, we will be writing our first program within 2 mi-
nuties after the installation of the IDE environment.
32
Chapter 4
Result and Discussion
4.1 System Physical Appearance
Fire Fighting Robot has developed to reduce human life lost and to develop such a device that
automatically sense fire and extinguish it without human intervention. In this the fireplace is
detected using the IR Flame sensors and are connected to Arduino MINI, which control the
movement of Motor drive that helps the robot to reach the fireplace and extinguishes it with
the pumping mechanisms. In the industry if any fire accident occurs, there is a need of person
to monitor continuously and rectify it. In this process if any time delay takes place irreparable
loss occurs in industry. The firefighting robot continuously monitors the surrounding and
helps in extinguishing the fire. Fig 4.1 shows the overall prototype of Fire Fighting Robot
33
4.2 System Physical Appearance Starting Mode
The below image is showing the total system is in Starting mode. There is given power
supplied. The Fig 4.2 shows the project Starting mode.
34
Figure 4.3. Project Standby Mode
35
4.5 Advantages
Conclusion
This model of Fire Extinguishing Robot aids to share out the burden of fire fighters in
firefighting task. Our project aims to build a real time firefighting robot which moves in a
constant speed, identify the fire and then extinguish it with the help of pumping mechanism.
The detection and extinguishing was done with the help basic hardware components
attached with the robot. Firstly, IR Flame sensors are used for the detection of fire. Secondly,
BO Motors and Rubber wheels are used to navigate the robot to reach the fireplace. Finally,
the robot extinguishes the fire with the help of submersible water pump and servo motors.
36
REFERENCES
[5] Sushrut Khajuria, Rakesh Johar, Varenyam Sharma, Abhideep Bhatti, “ Arduino Based
FireFighter Robot”, International Journal of Scientific Engineering and Research(IJS)
Volume 5 Issue 5, May 2017.
[6] Khaled Sailan, Prof. Dr. Ing. Klaus- Dieter Kuhnert “Obstacle avoidance stratergy
using fuzzy logic steering control of amphibious autonomous vehicle”, International
journa l of innovative science Engg. and Technology ,Volumn 2, 2015.
[7] J Jalani1, D Misman1, A S Sadun1 and L C Hong1, “Automatic fire fighting robot with
notification”,IOP Conference Series: Materials Science and Engineering, Volume 637,
The 3rd International Conference on Robotics and Mechantronics.
[8] Chen, Changsheng; Li, Mulin; Ferreira, zAnselmo; Huang, Jiwu; Cai, Rizhao
(2020). "A Copy- Proof Scheme Based on the Spectral and Spatial Barcoding
Channel Models". IEEE Transactions on Information Forensics and Security. 15:
1056–1071. doi:10.1109/tifs.2019.
[9] S. Gao, Z. Zhang, Z. Zhao and M. M. Jamali, "Vision and Infra-Red Sensor Based Fire
Fighting Robot," 2018 IEEE 61st International Midwest Symposium on Circuits and
Systems (MWSCAS),Windsor,ON,Canada,2018,pp.873-876,doi: 10.1109/MWSCAS.
[11] L. Chen, "Design and Manufacture of Indoor Intelligent Fire Fighting Robot," 2020
International Workshop on Electronic Communication and Artificial Intelligence
(IWECAI),Shanghai,China,2020,pp.201-204,doi: 10.1109/IWECAI50956.2020.000.
37
APPENDIX
The code for the project Arduino based Fire Fighting Robotics Car is given below.
#include <Servo.h>
Servo myservo;
int pos = 0;
#define pump 6
void setup ()
pinMode(Left_S, INPUT);
38
pinMode(Right_S, INPUT);
pinMode(Forward_S, INPUT);
pinMode(LM1, OUTPUT);
pinMode(LM2, OUTPUT);
pinMode(RM1, OUTPUT);
pinMode(RM2, OUTPUT);
pinMode(pump, OUTPUT);
pinMode(6,OUTPUT);
myservo.attach(11);
myservo.write(90);
void put_off_fire()
delay (500);
digitalWrite(LM1, HIGH);
digitalWrite(LM2, HIGH);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, HIGH);
39
for (pos = 50; pos <= 130; pos += 1) {
myservo.write(pos);
delay (10);
myservo.write(pos);
delay(10);
digitalWrite(pump,LOW);
myservo.write(90);
fire=false;
void loop ()
myservo.write(90); //Sweep_Servo();
digitalWrite(LM1, HIGH);
40
digitalWrite(LM2, HIGH);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, HIGH);
analogWrite(6,65);
digitalWrite(LM1, HIGH);
digitalWrite(LM2, LOW);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, LOW);
fire = true;
analogWrite(6,130);
digitalWrite(LM1, HIGH);
41
digitalWrite(LM2, LOW);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, HIGH);
analogWrite(6,130);
digitalWrite(LM1, HIGH);
digitalWrite(LM2, HIGH);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, LOW);
put_off_fire();]
42