İçindekiler:
- Adım 1: Parçalar
- Adım 2: Arduino UNO ile Farklı Parçaların Bağlantısı
- Adım 3: Arduino Kodları
- Adım 4: Programı Ayrıntılı Olarak Anlama
- Adım 5: Talimatların Demosu
Video: Ev Otomasyonu: Sıcaklık Eşik Değerinin Üstünde Olduğunda Alarm Verme ve LCD Ekranda Görüntüleme Değeri: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:21
Bu blog, sıcaklık programlanan eşik değerinden daha yüksek bir değere ulaştığında alarm vermeye başlayacak bir Ev Otomasyon Sisteminin nasıl yapıldığını gösterecektir. Sıcaklık eşik değerinden fazlaya ulaştığında, LCD'de odanın mevcut sıcaklığını ve gereken eylemi (Örn: Sıcaklığı Azalt) görüntülemeye devam edecektir. Bu derste Analog Devices ve AG-1005G Buzzer tarafından üretilen AD22100 sıcaklık sensörünü kullanıyorum. AD22100, Sinyal Şartlandırmalı bir Voltaj Çıkış Sıcaklık Sensörüdür
Adım 1: Parçalar
Bu yıkılmaz çalışmaya başlamadan önce bu parçalara ihtiyacınız var.
1. Arduino UNO Kartı
2. LCD Ekran (16x2)
3. Buzzer - 2 Pinli (AC-1005G)
4. Sıcaklık Sensörü - 3 Pinli (AD22100)
Adım 2: Arduino UNO ile Farklı Parçaların Bağlantısı
Arduino UNO kartı ile LCD Bağlantısı
Arduino Board Pin 7 ile LCD RS Pin (Pin 4)
Arduino Board Pin 8 ile LCD Etkinleştirme Pimi (Pim 6)
Arduino Kartının Pin 9'u ile LCD D4 Pin (Pin 11)
Arduino Kartının Pin 10'u ile LCD D5 Pin (Pin 12)
Arduino Kartının Pin 11'i ile LCD D6 Pin (Pin 13)
Arduino Kartının Pin 12'si ile LCD D7 Pin (Pin 14)
+5v (Pot Pin 1) ve GND'ye (Pot Pin 3) 10 KΩ Pot ekleyin, Tencerenin Orta Pinini (Pot Pin 2) LCD V0 Pinine (Pin 3) bağlayın.
Arduino Kartında +5v ile LCD VDD Pin (Pin 2) ve LCD A Pin (Pin 15).
Arduino Kartında GND'li LCD VSS Pin (Pin 1) ve LCD K Pin (Pin 16).
Arduino UNO Kartı ile AD22100 Sıcaklık Sensörü bağlantısı
AD22100'ün Pin 1 (V+) Arduino Board üzerindeki +5 v'ye bağlanmalıdır.
AD22100'ün Pin 2 (Vo), Arduino Board üzerindeki Pin A1'e bağlanmalıdır.
AD22100'ün Pin 3'ü (GND), Arduino Board üzerindeki GND'ye bağlanmalıdır.
Arduino UNO Kartı ile Buzzer (AC-1005G) Bağlantısı
Arduino kartının Pin 6 PWM çıkışı Buzzer'ın +ve girişine bağlanmalıdır.
Arduino Board'un GND'si Buzzer'ın -ve girişi ile bağlanmalıdır.
Adım 3: Arduino Kodları
Derleyin ve Arduino Board'a yükleyin ve Ev Otomasyon Sistemi demosunu izleyin
//Program burada başlar
int değeri;
int tempPin = A1;
int zil = 6;
#LiquidCrystal lcd (7, 8, 9, 10, 11, 12);
geçersiz kurulum() {
// bir kez çalıştırmak için kurulum kodunuzu buraya koyun:
lcd.begin(16, 2);
lcd.clear();
Seri.başla(9600);
pinMode(buzzer, OUTPUT);
}
void loop() {// tekrar tekrar çalıştırmak için ana kodunuzu buraya yazın:
val = analogRead(tempPin);//AD22100 Pin A1'e bağlı
/*
*25C için val değeri 900 olarak gelir yani
* 900, 1.9375 v'ye karşılık gelir
* Transfer Fonksiyonu (V+/5)*(1.375 + 22.5 mv/degC * 25 degC), * AD22100 Veri Sayfasını Okuyun
*/
float cel = ((((1.9375/900) * değer) – 1.375)/22.5)*1000;
float farh = (cel*9)/5 + 32;
Seri.baskı(val);
Seri.println();
Serial.print(“SICAKLIK = “);
Seri.baskı(cel);Seri.baskı(“*C”);
Seri.println();
if (cel > 26){
ton(sesli uyarı, 1000);
lcd.clear();
lcd.print(“Sıcaklık eşiğin üzerinde”);
lcd.setCursor(0, 1);
lcd.print(“Sıcaklığı Azalt”);
}
Başka
{noTone(sesli uyarı);
lcd.clear();
lcd.print(“Sıcaklık kontrol altında”);
lcd.setCursor(0, 1);
lcd.print(“Sıcaklık= “);
lcd.print(cel);
lcd.print(“dereceC”);
}
gecikme(500);
}
//Program burada biter
Adım 4: Programı Ayrıntılı Olarak Anlama
Kodun birkaç bölümünü açıklamaya çalışacağım.
If/else deyimi ile ilgili fonksiyonlar
Sıcaklık eşik değerinden büyükse, kodun aşağıdaki bölümü ile bir alarm çalması için buzzer'a sinyal gönderiyorum ve sıcaklığı düşürmek için LCD'de görüntülüyorum.
eğer (cel > 26)
{ton(sesli uyarı, 1000);
lcd.clear();
lcd.print(“Sıcaklık eşiğin üzerinde”);
lcd.setCursor(0, 1);
lcd.print(“Sıcaklığı Azalt”);
}
Değilse, mevcut sıcaklığın LCD'ye gönderilmesi ve bu sıcaklığın görüntülenmesi kontrol altındadır.
Başka
{noTone(sesli uyarı);
lcd.clear();
lcd.print(“Sıcaklık kontrol altında”);
lcd.setCursor(0, 1);
lcd.print(“Sıcaklık= “);
lcd.print(cel);
lcd.print(“derece”);
}
Buzzer ile ilgili işlevler
tone(buzzer, 1000) - bu fonksiyon Pin 6 olarak tanımlanan buzzer isimli pine 1 khz sinyal gönderir ve Manyetik buzzer Pin 6.noTone(buzzer)'a bağlanır - 1 khz sinyal göndermeyi durdurur. Bu nedenle, zil duracak
Sıcaklık Sensörü ile ilgili fonksiyonlar
Sıcaklık okumasının Analog değerinin derece C değerine dönüştürülmesi, aşağıda yazıldığı gibi AD22100 Veri Sayfasında bulunabilecek bir transfer fonksiyonu kullanılarak yapılır.
Vout = (V+/5 V) × (1.375 V + 22.5 mV/°C × TA) ve aynı değer LCD ekranda yazdırılır.
Adım 5: Talimatların Demosu
Program derlenip Arduino UNO kartına yüklendikten sonra
AD22100 sıcaklık sensörü tarafından algılanan sıcaklığı artırmaya çalışalım ve Ev Otomasyonu sisteminin keyfini çıkaralım.
Sensörün sıcaklığını arttırmak için Lab'de bulunan havya ile dokunuyorum.
Demoya buradan göz atabilirsiniz..
Ev Otomasyon Sistemi Demosu
Önerilen:
Eski Bir Radyo Devresine Güç Verme (Pillerle Güçlendirilir): 4 Adım
Eski Bir Radyo Devresini Yeniden Güçlendirme (Pillerle Güçlendirilir): Hiç sadece AC'de çalışan ve içinde pili olmayan eski bir radyonuz oldu mu? Bugün size eski radyonuzu pille nasıl çalıştıracağınızı ve bir Güç varsa kullanışlı olduğunu göstereceğim. kesinti ve telsizinizin gücü bağlanmadan pile bağlıydı
M5STACK Visuino Kullanarak M5StickC ESP32 Üzerinde Sıcaklık, Nem ve Basıncı Görüntüleme - Yapması Kolay: 6 Adım
M5STACK Visuino Kullanarak M5StickC ESP32 Üzerinde Sıcaklık, Nem ve Basıncı Görüntüleme - Yapması Kolay: Bu eğitimde, ESP32 M5Stack StickC'yi Arduino IDE ve Visuino ile ENV sensörünü (DHT12, BMP280, BMM150)
XinaBox Kullanarak Tarih, Saat ve Sıcaklık Görüntüleme: 8 Adım
XinaBox Kullanarak Tarih, Saat ve Sıcaklık Görüntüleme: ESP8266'ya dayalı Xinabox xChips kullanarak tarih, saat ve sıcaklığı Celsius ve Fahrenheit cinsinden gösteren harika OLED ekran
Arduino Kullanarak P10 LED Ekran Modülünde Sıcaklık Görüntüleme: 3 Adım (Resimlerle)
Arduino Kullanarak P10 LED Ekran Modülünde Sıcaklık Görüntüleme: Bir önceki eğitimde, Arduino ve DMD Konnektörü kullanılarak Dot Matrix LED Ekran P10 Modülü üzerindeki metnin nasıl görüntüleneceği anlatılmıştı, buradan kontrol edebilirsiniz. Bu dersimizde P10 modülünü display med olarak kullanarak basit bir proje eğitimi vereceğiz
Arduino Kullanarak P10 LED Ekranda Metni Görüntüleme: 5 Adım (Resimlerle)
Arduino Kullanan P10 LED Ekranda Metin Görüntüleme: Domatrix Ekran veya daha yaygın olarak Çalışan Metin olarak anılır, genellikle mağazalarda ürünlerinin reklamını yapmak için bir araç olarak bulunur, pratik ve esnek kullanımı iş aktörlerini reklam tavsiyesi olarak kullanmaya teşvik eder. Şimdi Nokta kullanımı