Pinoo ile Büyüme Kutusu
PİNOO İLE BÜYÜME KUTUSU
Projenin Amacı: Pinoo Kontrol Kartı sıcaklık-nem sensörü, buzzer modülü, led modülü ve toprak nem sensörü kullanarak büyüme kutumuzda toprağın suya ihtiyacı olduğunu belirtmesini herhangi bir yüksek sıcaklık olduğunda ise uyarı vermesini sağlayacağımız bir sistem yapmak.
Süre: 2 ders
Pinoo Set: İcat Set, Tam Set.
Yaş Grubu: 7 yaş ve üzeri
Kazanımları:
- Pinoo kontrol kartını kodlamayı öğrenir.
- Sıcaklık sensörü kullanmayı öğrenir.
- Buzzer modülü kullanmayı öğrenir.
- Algoritma kurma becerisi gelişir.
- Kodlama becerisi gelişir.
Kullanılması Gereken Malzemeler: Pinoo Studio programı, pinoo kontrol kartı, sıcaklık-nem sensörü, buzzer modülü, toprak-nem sensörü, yeşil ve kırmızı led modülü, bağlantı kabloları.

Tasarım için Gereken Malzemeler: Dekota, kahverengi eva, makas, maket bıçağı, silikon tabancası ve silikon.
Proje Yapılışı:
- Projemiz için ilk önce dekota malzememizi ayarlıyoruz.
Dekota parçalarını resimdeki gibi silikon tabancası yardımı ile birleştiriyoruz.
Besleme kutumuzun alt tarafını kahverengi eva ile kaplıyoruz.
Buzzer modülümüz ile sıcaklık-nem sensörümüzü silikon tabancası yardımı ile sabitliyoruz.
Ardından kırmızı ve yeşil ledimizi kutumuzun ön tarafına sabitliyoruz.
Toprak-nem sensörümüzü kutumuzun içine doğru toprak değeceği şekilde resimdeki gibi sabitliyoruz.
Ardından yeşil ledimizi 2 numaralı, kırmızı ledimizi 5 numaralı, sıcaklık-nem sensörümüzü 4 numaralı, buzzer modülümüzü 3 numaralı ve toprak-nem sensörümüzü 7 numaralı kapıya bağlantılarını gerçekleştiriyoruz.
Kodlama kısmı:
Buzzer modülümüzü de yeşil bayrağa tıklanınca kodu altında ses çıkar kodu ile çalıştırarak kontrol ediyoruz.
Sıcaklık nem ve Toprak-nem sensörlerimizin çalışıp çalışmadığını kontrol etmek için yeşil bayrak kodu altında sürekli tekrarla döngüsü içerisinde merhaba de kodunun içerisine değer oku kodu ile sensörlerimizin değerlerini okutuyoruz.
Kırmızı ve yeşil led modülümüzün çalışıp çalışmadığını kontrol etmek için tuşu basılınca kodu altında led değeri ayarla kodunu kullanarak ledimizin durumunu 1 ve 0 yaparak kontrol ediyoruz.
Eğer toprak-nem sensöründen aldığımız değer 400’den küçük ise yani toprağımız kuru ise kırmızı ledimiz yanacağı gibi yeşil ledimizi söndürmesini yapıyoruz. Değilse yani toprağımdaki su yeterli seviyede ise yeşil ledimizi yakıyoruz.
Ardından ikinci koşulumuz, eğer ortamdaki sıcaklık 35 dereceden büyük ise buzzer modülümüz aktif hale geliyor. Değilse buzzer modülümüzü pasif hale getiriyoruz.
Kodlarımız pinoo kontrol kartımıza yükleniyor. Yükleme bittikten sonra pil yuvası takılır ve proje çalıştırılır.
Projenin Çalışma Hali:
ARDUINO IDE KODLARI:
#include <dht11.h> // dht11 kütüphanesini kodlarımıza dahil ettik. int dhtPin=2; // Sıcaklık-nem sensörümüzün 2. pine bağlandığını belirttik. dht11 sicakliksensor; // sicakliksensor adında bir DHT11 nesnesi oluşturduk. int topraknemPin=A0;//Toprak-nem sensörümüzü taktığımız pini tanıttık. int yesilLed=2;//Yeşil ledi hangi pine taktığımızı belirttik. int kirmiziLed=5;//Kırmızı ledi hangi pine taktığımızı belirttik. int buzzerPin=4;//Buzzer modülümüzü hangi pine taktığımızı belirttik. void setup() { pinMode(topraknemPin,INPUT);//Torpak-nem sensörümüzün giriş birimi olduğunu belirttik. pinMode(yesilLed,OUTPUT);//Yeşil renkli ledimizin çıkış birimi olduğunu belirttik. pinMode(kirmiziLed,OUTPUT);//Kırmızı renkli ledimizin çıkış birimi olduğunu belirttik. pinMode(buzzerPin,OUTPUT);//Buzzeer modülümüzün çıkış birimi olduğunu belirttik. } void loop() { float sicaklik = sicakliksensor.read(dhtPin);//Sıcaklık- nem sensörümüzden aldığımız değeri sicaklik adında oluşturduğumuz değişkene aktardık. int veri=analogRead(topraknemPin);//Toprak-nem sensörümüzden aldığımız analog değerleri sayısal veri tipinde oluşturduğumuz veri adındaki değişkene aktardık. if(veri<400)//Eğer toprak-nem sensörümüzden aldığımız değer 400'den küçük yani toprağımız kuru ise koşulunu oluşturduk. { digitalWrite(kirmiziLed,HIGH);//Kırmızı ledimizi yaktık. digitalWrite(yesilLed,LOW);//Yeşil ledimizi her ihtimale karşı söndürdük. } else//Yukarıda belirttiğimiz koşul sağlanmaz ise koşulunu oluşturduk. { digitalWrite(yesilLed,HIGH);//Yeşil ledimizi yaktık. digitalWrite(kirmiziLed,LOW);//Kırmızı ledimizi her ihtimale karşı söndürdük. } if(sicaklik>35)//Eğer sıcaklık değeri 35 dereceden büyük ise koşulunu oluşturduk. { digitalWrite(buzzerPin, HIGH);//Buzzer modülümüzü aktif hale getirdik. } else//Yukarıda oluşturduğumuz koşul sağlanmaz ise koşulunu oluşturduk. { digitalWrite(buzzerPin, LOW);//Buzzer modülümüzü pasif hale getirdik. } }