This is fan control using temperature sensor lm35 and AVR ATmega8. We can control any AC or DC fan by connecting it to the relay circuit. Table of Contents. 1 Working Principle of Automatic Fan Controller 1.1 How to Set the Temperature. 2 How to Make Automatic Fan Controller. 3 Automatic Temperature Controlled Fan AVR Circuit. April 3, 2016December 1, 20175. Arduino, arduino temperature sensor code, Automatic fan speed control circuit by Arduino, fan, fan speed and temperature monitor, fan with speed control, genuino, LM-35, temperature.
In this arduino based project, we are going to control DC fan speed according to the room temperature and show these parameter changes on a 16x2 LCD display. It is accomplished by the data communications between Arduino, LCD, DHT11 sensor Module and DC fan that is controlled by using PWM. PWM is a technique by using which we can control voltage.
Circuit Components • Arduino UNO • DHT11 sensor • DC Fan • 2n2222 transistor • 9 volt battery • 16x2 LCD • 1K resistor • Connecting wires This project consists of three sections. One senses the temp erature by using humidity and temperature sensor namely DHT11. Second section reads the dht11 sensor module’s output and extracts temperature value into a suitable number in Celsiu s scale and control the fan speed by using PWM. And last part of system shows humidity and temperature on LCD and Fan driver.
Here in this project we have used a sensor module namely DHT11 that are already have discuss our previous project namely “”. Here we have only used this DHT sensor for sensing temperature, and then programmed our arduino according to the requirements. 3d lenticular software with crack and keygen finder. Working of this project is very simple.
We have created PWM at pwm pin of arduino and applied it at base terminal of transistor. Then transistor creates a voltage according to the pwm input.
Fan speed and PWM values and duty cycles values are showing in given table Temperature Duty Cycle PWM Value Fan Speed Less 26 0% 0 Off 26 20% 51 20% 27 40% 102 40% 28 60% 153 60% 29 80% 204 80% Greater 29 100% 255 100% What is PWM? PWM is a technique by using we can control the voltage or power. To understand it more simply, if you are applying 5 volt for driving a motor then motor will moving with some speed, now if we reduces applied voltage by 2 means we apply 3 volt to motor then motor speed also decreases. This concept is used in the project to control the voltage using PWM. (To understand more about PWM, check this circuit: ) The main game of PWM is digital pulse with some duty cycle and this duty cycle is responsible for controlling the speed or voltage. Suppose we have a pule with duty cycle 50% that means it will give half of voltage that we apply. Formula for duty cycle given below: Duty Cycle= Ton/T Where T= total time or Ton+Toff And Ton= On time of pulse (means 1 ) And Toff= Off time of pulse (means 0) Circuit Description Connections of this temperature controlled fan circuit is very simple, here a liquid crystal display is used for displaying temperature and Fan speed Status.
LCD is directly connected to arduino in 4-bit mode (Check this tutorial for more details: ). Pins of LCD namely RS, EN, D4, D5, D6 and D7 are connected to arduino digital pin number 7, 6, 5, 4, 3 and 2.
And a DHT11 sensor module is also connected to digital pin 12 of arduino. Digital pin 9 is used for controlling fan speed trough transistor. Code Description First we include the library for lcd and dht sensor and then define pin for lcd, dht sensor and for fan. Then initialize all the things in setup loop. And in loop by using dht function reads DHT sensor and then using some dht functions we extract temperature and display these on LCD.
After this we compare the temperature with pre define temperature digit and then generate PWM according to the temperature value. For generating PWM we have used “analogWrite(pin, PWM value)” fuction in 8 bit. Mean if PWM value is equivalent of analog value. So if we need to generate 20% of duty cycle then we passes 255/5 value as PWM in “analogWrite” Function. Nice work, exactly what I was looking for. But I wonder how anybody got it to work. First I had a bunch of error on arduino, dht errors.
So I used that library for dht11 then LiquidCrystal lcd(7, 6, 5, 4, 3, 2); should be LiquidCrystal lcd(2, 3, 4, 5, 6, 7); and #define dht_dpin 12 ==> #define dht11pin 12 and dht DHT; ==> dht11 DHT11; and DHT.read11(dht_dpin); int temp=DHT.temperature; should be DHT11.read(dht11pin); int temp=DHT11.temperature; this is it for the code and then the fan circuit should be grounded to an arduino analogue ground (from the battery minus to arduino GRND, just under +5V). After all that change it's working thank you. New to this environment and struggling with finding the right combination of library and code statements.