Submitted by
HARINI C A [22CS082]
MADHUMITHRA S [22CS101]
KAVISRI S [22CS096]
MOULIESWAR S [22CS113]
RASIPURAM-637 408
APRIL 2024
MUTHAYAMMAL ENGINEERING COLLEGE
(AUTONOMOUS)
RASIPURAM
BONAFIDE CERTIFICATE
______________ ______________
SIGNATURE SIGNATURE
Dr.G.KAVITHA, M.S Mrs.K.GANDHIMATHI, M.E.,
(By Research), Ph.D., ASSISTANT PROFESSOR
PROFESSOR
Department of Computer
HEAD OF THE DEPARTMENT
Department of Computer Science and Science and Engineering,
Engineering, Muthayammal Engineering
Muthayammal Engineering College(Autonomous),
College(Autonomous), Rasipuram-637408.
Rasipuram-637408.
2
ACKNOWLEDGEMENT
We here like to record our deep sense of gratitude to our beloved Principal
Dr. M. MADHESWARAN, M.E., Ph.D., for providing us the required facility to
complete our project successfully.
We extend our sincere thanks and gratitude to our Head of the Department
Dr. G. KAVITHA, M.S(By Research), Ph.D., Department of Computer Science
and Engineering for her valuable suggestions throughout the project.
3
responsible for completion of the project.
4
ABSTRACT
5
LIST OF FIGURES
LM 35 temperature sensor
16x2 LCD
Arduino UNO
LIST OF ABBREVIATIONS
ACRONYMS ABBREVIATIONS
6
INTRODUCTION
have become the heart of the new technologies that are being
introduced daily.
7
PROPOSED SYSTEM
This project presents the design and simulation of the fan speed
temperature.
of the room and the speed of the fan is varied according to the
8
DESCRIPTION
circuits, thus we employed the Arduino board for fan speed control.
room and send that information to the Arduino board. Then the
The outcome obtained from the operation is given through the o/p
generated pulses from the board which is further fed to the driver
The duty cycle is varied from 0 to 100 to control the fan speed
9
SYSTEM REQUIREMENTS
1. HARDWARE REQUIREMENTS:
Board-Arduino Uno
LCD-16x2 Display
Transistor-BD139
Diode-1N4007
LED
R1-R2-1-kilo-ohm
Capacitor-10uF,16velectrolicty
Fan-9 V DC
2. SOFTWARE REQUIREMENTS:
Arduino 2.3.2
10
PROJECT DESCRIPTION
11
embedded environments. All Arduino boards are completely open-
source, empowering users to build them independently and
eventually adapt them to their particular needs. The software, too,
is open-source, and it is growing through the contributions of users
worldwide
It’s simple and accessible user experience, Arduino has been used
in thousands of different projects and applications. The Arduino
software is easy-to-use for beginners, yet flexible enough for
advanced users. It runs on Mac, Windows, and Linux. Teachers
and students use it to build low cost scientific instruments, to prove
chemistry and physics principles, or to get started with
programming and robotics. Designers and architects build
interactive prototypes, musicians and artists use it for installations
and to experiment with new musical instruments. Makers, of
course, use it to build many of the projects exhibited at the Maker
Faire, for example. Arduino is a key tool to learn new things.
Anyone - children, hobbyists, artists, programmers - can start
tinkering just following the step by step instructions of a kit, or
sharing ideas online with other members of the Arduino
community.
There are many other microcontrollers and microcontroller
platforms available for physical computing. Parallax Basic Stamp,
Netmedia's BX-24, Phidgets, MIT's Handyboard, and many others
offer similar functionality. All of these tools take the messy details
of microcontroller programming and wrap it up in an easy-to-use
package. Arduino also simplifies the process of working with
microcontrollers, but it offers some advantages for teachers,
students, and interested amateurs over other systems:
12
Inexpensive:
Cross-platform:
13
relatively inexperienced users can build the breadboard version of
the module in order to understand how it works and save money.
SPECIFICATIONS
Microcontroller: ATmega328
Operating Voltage: 5V
Input Voltage (recommended): 7-12V
Input Voltage (limits): 6-20V
Digital I/O Pins: 14 (of which 6 provide PWM output)
Analog Input Pins:6
DC Current per I/O Pin:40 mA
DC Current for 3.3V Pin:50 mA
Flash Memory:32 KB of which 0.5 KB is used by
Bootloader
SRAM:2 KB
EEPROM :1 KB
Clock Speed:16 MHz
14
General Pin functions:
LED: There is a built-in LED driven by digital pin 13. When the pin
is HIGH value, the LED is on, when the pin is LOW, it's off.
VIN: The input voltage to the Arduino/Genuino board when it's
using an external power source (as opposed to 5 volts from the
USB connection or other regulated power source). You can supply
voltage through this pin, or, if supplying voltage via the power jack,
access it through this pin.
5V: This pin outputs a regulated 5V from the regulator on the
board. The board can be supplied with power either from the DC
power jack (7 - 20V), the USB connector (5V), or the VIN pin of the
board (7-20V). Supplying voltage via the 5V or 3.3V pins bypasses
the regulator, and can damage the board.
3V3: A 3.3 volt supply generated by the on-board regulator.
Maximum current draw is 50 mA.
GND: Ground pins.
IOREF: This pin on the Arduino/Genuino board provides the
voltage reference with which the microcontroller operates. A
properly configured shield can read the IOREF pin voltage and
select the appropriate power source or enable voltage translators
on the outputs to work with the 5V or 3.3V.
Reset: Typically used to add a reset button to shields which block
the one on the board.
15
Special Pin Functions:
Each of the 14 digital pins and 6 Analog pins on the Uno can be
used as an input or output, using pin Mode (), digital Write(), and
digital Read() functions. They operate at 5 volts. Each pin can
provide or receive 20 mA as recommended operating condition
and has an internal pull-up resistor (disconnected by default) of 20-
50k ohm. A maximum of 40mA is the value that must not be
exceeded on any I/O pin to avoid permanent damage to the
microcontroller. The Uno has 6 analog inputs, labelled A0 through
A5, each of which provide 10 bits of resolution (i.e. 1024 different
values). By default they measure from ground to 5 volts, though is
it possible to change the upper end of their range using the AREF
pin and the analog Reference () function.
Serial: pins 0 (RX) and 1 (TX). Used to receive (RX) and transmit
(TX) TTL serial data. These pins are connected to the
corresponding pins of the ATmega8U2 USB-to-TTL Serial chip.
External Interrupts: pins 2 and 3. These pins can be configured
to trigger an interrupt on a low value, a rising or falling edge, or a
change in value.
PWM (Pulse Width Modulation) 3, 5, 6, 9, 10, and 11 Can provide
8-bit PWM output with the analog Write() function.
SPI (Serial Peripheral Interface): 10 (SS), 11 (MOSI), 12 (MISO),
13 (SCK). These pins support SPI communication using the SPI
library.
16
TWI (Two Wire Interface): A4 or SDA pin and A5 or SCL pin.
Support TWI communication using the Wire library.
AREF (Analog Reference: Reference voltage for the analog inputs.
Communication:
17
ATmega8U2/16U2 is connected to the reset line of the
ATmega328 via a 100 nanofarad capacitor. When this line is
asserted (taken low), the reset line drops long enough to reset the
chip.
This setup has other implications. When the Uno is connected to
upload of new code), it will intercept the first few bytes of data sent
the time that the signal spends off. The duration of "on time" is
18
LED. In the graphic below, the green lines represent a regular time
Frequency
Temperature Sensor:
19
Features:
20
Liquid Crystal Display:
has been used in the system to show the room temperature. Liquid
These modules are preferred over seven segments and other multi
on. A 16x2 LCD means it can display 16 characters per line and
This LCD has two registers, namely, Command and Data. The
LCD.
21
A command is an instruction given to LCD to do a predefined task
like initializing it, clearing its screen, setting the cursor position,
displayed on the LCD. The data is the ASCII value of the character
22
Pin Function Name
No
1 Ground (0V) Ground
2 Supply voltage; 5V (4.7V – 5.3V) Vcc
3 Contrast adjustment; through a variable VEE
resistor
4 Selects command register when low; and Register Select
data register when high
5 Low to write to the register; High to read Read/write
from the register
6 Sends data to data pins when a high to low Enable
pulse is given
7 DB0
8 DB1
9 DB2
10 8-bit data pins DB3
11 DB4
12 DB5
13 DB6
14 DB7
15 Backlight VCC (5V) Led+
SYSTEM IMPLEMENTATION
23
CIRCUIT DIAGRAM OF THE TEMPERATURE-BASED FAN SPEED
24
BLOCK DIAGARAM
LCD DISPLAY
LM35
ARDUINO
BOARD
FAN
ARDUINO PROGRAMME:
25
26
27
28
MORPHOLOGICAL OPERATION
29
In our case fanSpeed will have a value of 32 at temp Min and 255
at temp Max. These values are used to control the speed of the
fan using PWM and the analog Write ().
The fan LCD re-maps the temp to allow the display of fan Speed in
a 0 to 100% range so you can say that the speed of the fan is
directly dependent of the LM35’s temperature. When the
temperature reaches the value set in temperature Max the fan will
be at its maximum spinning velocity and the LCD will display
FANS: 100% even though the temperature might increase above
temp Max.
The rest of the explanation can be read in the comments area of
the Arduino sketch.
In the next project I will make a temperature protection circuit that
will turn off the power of equipment when its temperature has
reached a certain value.
30
RESULT
31
APPLICATION:
Personal computers
Washing machines
The circuit can be used for Car Engine to reduce the heat.
using it manually.
32
CONCLUSION
33
REFERENCES:
https://www.arduino.cc/en/Main/Software
www.ti.com/product/LM35
www.learningaboutelectronics.com
https://components101.com/lm35-temperature-sensor
https://circuitdigest.com/.../16x2-lcd-display-module
https://www.engineersgarage.com/.../16x2-lcd-module
https://www.build-electronic-circuits.com/how-transistor
34