back to top

Akıllı Sıcaklık Kontrollü Vantilatör Projesi

Akıllı Sıcaklık Kontrollü Vantilatör

Yaz mevsiminde “Keşke kendi vantilatörümü yapsam” diye düşünmüşsünüzdür. Bu yazımızda PicoBricks ile nasıl kendi akıllı vantilatörünüzü yapabileceğinizi öğreneceksiniz.

Klimalar, bir ortamı yazın soğuk ve kışın sıcak tutmak için kullanılırlar. Fırınlar ise yemek pişirirken kullanıcının belirlediği sıcaklığa göre kendini ayarlar ve o sıcaklıkta kendini sabit tutmaya çalışır. Bu iki cihaz da sıcaklığı kontrol etmek için sıcaklık sensörler kullanırlar.

PicoBricks’te sıcaklık ve nemi ayrı ayrı ölçmeyi sağlayan sensörler bulunur. Böylece ortam sıcaklığını ve nemini kolayca kontrol etmeye yararlar. Bu projemizde vantilatör hızını ortam sıcaklığına göre otomatik olarak ayarlayan bir soğutma sistemi yapacağız.

Proje Detayları ve Algoritma

Öncelikle yazacağımız kod PicoBricks üzerinde bulunan DHT11 sensörünün ölçtüğü sıcaklık ve nem değerlerini görüntüleyecektir. Sonrasında PicoBricks’e bağlı bir DC motor sıcaklık değeri belli bir limite ulaştığında çalışacak ve farklı bir limit değerin altına indiğinde duracak.

Bileşenler

1x PicoBricks

3x Jumper Kablo

Devre Şeması

Devre Şeması

PicoBricks modülleri kablolar olmadan kodlanabilir ve çalıştırılabilir. Ancak modülleri panodan ayırarak kullanmak isterseniz bağlantılar için kablo kullanmanız gerekecektir.

MicroBlocks Kodları

Microblocks kodlarına yukarıdaki resmi Run sekmesine sürükleyerek ulaşabilirsiniz.

MicroPython Kodları

from machine import Pin
from picobricks importDHT11import utime

LIMIT_TEMPERATURE=20 #define the limit temperature

dht_sensor =DHT11(Pin(11, Pin.IN, Pin.PULL_DOWN))
m1 =Pin(21, Pin.OUT)
m1.low()
dht_read_time = utime.time()
#define input-output pins

while True:if utime.time()- dht_read_time >=3:
        dht_read_time = utime.time()
        dht_sensor.measure()
        temp= dht_sensor.temperature
        print(temp)if temp >=LIMIT_TEMPERATURE:
            m1.high()
            #operate if the room temperature is higher than the limit temperature
        else:
            m1.low()

Arduino C Kodları

#include

#define LIMIT_TEMPERATURE27
#define DHTPIN11
#define DHTTYPEDHT11DHTdht(DHTPIN,DHTTYPE);
float temperature;voidsetup(){// put your setup code here, to run once:
  Serial.begin(115200);
  dht.begin();pinMode(21,OUTPUT);}voidloop(){// put your main code here, to run repeatedly:delay(100);
  temperature = dht.readTemperature();
  Serial.print("Temp: ");
  Serial.println(temperature);if(temperature >LIMIT_TEMPERATURE){digitalWrite(21,HIGH);}else{digitalWrite(21,LOW);}}9
Önceki İçerik
Sonraki İçerik

Son Çıkan Yazılar

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz