Project Hub

🌬️
Temperature Controlled Fan
Fan speed scales with room temperature.
intermediate50 min
Components Needed
Arduino UNO
DHT11 sensor
5V DC fan
NPN transistor (2N2222)
1kΩ resistor
Diode (1N4007)
Circuit Diagram & Wiring
Add your circuit diagram image here.
- DHT11 data → pin 2.
- Fan + → 5V, fan - → transistor collector.
- Transistor base → pin 9 via 1kΩ, emitter → GND.
- Diode across fan (cathode to +).
Arduino Sketch (.ino)
smart-fan.ino
<span style="color:#f97583">#includespan> <DHT.h>
DHT dht(<span style="color:#79b8ff">2span>, DHT11);
void setup() {
dht.begin();
pinMode(<span style="color:#79b8ff">9span>, OUTPUT);
Serial.begin(<span style="color:#79b8ff">9600span>);
}
void loop() {
float t = dht.readTemperature();
Serial.println(t);
int speed = <span style="color:#79b8ff">0span>;
if (t > <span style="color:#79b8ff">20span>) speed = map((int)t, <span style="color:#79b8ff">20span>, <span style="color:#79b8ff">35span>, <span style="color:#79b8ff">80span>, <span style="color:#79b8ff">255span>);
speed = constrain(speed, <span style="color:#79b8ff">0span>, <span style="color:#79b8ff">255span>);
analogWrite(<span style="color:#79b8ff">9span>, speed);
delay(<span style="color:#79b8ff">1000span>);
}