Sadržaj:

Kućna automatizacija: Oglasite alarm i prikažite na LCD -u kada je temperatura iznad vrijednosti praga: 5 koraka
Kućna automatizacija: Oglasite alarm i prikažite na LCD -u kada je temperatura iznad vrijednosti praga: 5 koraka

Video: Kućna automatizacija: Oglasite alarm i prikažite na LCD -u kada je temperatura iznad vrijednosti praga: 5 koraka

Video: Kućna automatizacija: Oglasite alarm i prikažite na LCD -u kada je temperatura iznad vrijednosti praga: 5 koraka
Video: Сигнализация Emastiff GSM & WiFi Alarm System зависла при настройке 2024, Juli
Anonim
Kućna automatizacija: Oglasite alarm i prikažite na LCD -u kada je temperatura iznad vrijednosti praga
Kućna automatizacija: Oglasite alarm i prikažite na LCD -u kada je temperatura iznad vrijednosti praga

Ovaj blog će pokazati kako napraviti sistem kućne automatizacije koji će početi oglašavati alarm kad god temperatura dosegne više od programirane granične vrijednosti. Nastavit će prikazivati trenutnu temperaturu prostorije na LCD -u i potrebne radnje (npr.: Smanjenje temperature) kada temperatura dosegne više od granične vrijednosti. U ovom vodiču koristim AD22100 temp senzor koji proizvode Analog Devices i AG-1005G Buzzer. AD22100 je osjetnik izlazne temperature napona sa kondicioniranjem signala

Korak 1: Dijelovi

Ovi dijelovi su vam potrebni prije nego započnete s ovim neuništivim radom

1. Arduino UNO odbor

2. LCD ekran (16x2)

3. Zvučni signal - 2 pina (AC -1005G)

4. Senzor temperature - 3 pinski (AD22100)

Korak 2: Povezivanje različitih dijelova s Arduino UNO

LCD veza sa Arduino UNO pločom

LCD RS pin (pin 4) sa pin 7 Arduino ploče

Pin za omogućavanje LCD -a (Pin 6) sa Pin 8 na Arduino ploči

LCD D4 pin (pin 11) sa pin 9 na Arduino ploči

LCD D5 pin (pin 12) sa pin 10 Arduino ploče

LCD D6 pin (pin 13) sa pin 11 Arduino ploče

LCD D7 pin (pin 14) sa pin 12 Arduino ploče

Dodajte 10 KΩ pot u +5v (pin pin 1) i GND (pot pin 3), Spojite srednji pin lonca (Pot Pin 2) na LCD V0 pin (Pin 3).

LCD VDD pin (pin 2) i LCD A pin (pin 15) sa +5v na Arduino ploči.

LCD VSS pin (pin 1) i LCD K pin (pin 16) sa GND na Arduino ploči.

Povezivanje senzora temperature AD22100 s Arduino UNO pločom

Pin 1 (V +) AD22100 treba spojiti na +5 v na Arduino ploči.

Pin 2 (Vo) AD22100 treba spojiti na Pin A1 na Arduino ploči.

Pin 3 (GND) AD22100 trebao bi biti spojen na GND na Arduino ploči

Zvučni signal (AC-1005G) Povezivanje sa Arduino UNO pločom

Pin 6 PWM izlaz Arduino ploče treba spojiti na +ve ulaz zujalice.

GND Arduino ploče trebao bi biti povezan sa -ve ulazom zujalice

Korak 3: Arduino kodovi

Sastavite ga i prenesite na Arduino ploču i pogledajte demo sistema kućne automatizacije

// Program počinje ovdje

int val;

int tempPin = A1;

int zujalica = 6;

#include LiquidCrystal lcd (7, 8, 9, 10, 11, 12);

void setup () {

// ovdje postavite svoj kôd za postavljanje, da biste ga jednom pokrenuli:

lcd.begin (16, 2);

lcd.clear ();

Serial.begin (9600);

pinMode (zujalica, OUTPUT);

}

void loop () {// stavite svoj glavni kôd ovdje, radi višestrukog izvođenja:

val = analogRead (tempPin); // AD22100 je povezan na Pin A1

/*

*Za 25C, val je 900 što znači

* 900 odgovara 1.9375 v

* Transfer funkcija je (V +/5) * (1.375 + 22.5 mv/degC * 25 degC), * Pročitajte tehnički list AD22100

*/

float cel = (((((1.9375/900) * val) - 1.375) /22.5) * 1000;

float farh = (cel*9)/5 + 32;

Serial.print (val);

Serial.println ();

Serial.print (“TEMPRATURE =“);

Serial.print (cel); Serial.print (“*C”);

Serial.println ();

if (cel> 26) {

ton (zujalica, 1000);

lcd.clear ();

lcd.print (“Temp iznad praga”);

lcd.setCursor (0, 1);

lcd.print (“Smanjenje temp.”);

}

else

{noTone (zujalica);

lcd.clear ();

lcd.print ("Temp. pod kontrolom");

lcd.setCursor (0, 1);

lcd.print (“Temp =“);

lcd.print (cel);

lcd.print ("degC");

}

kašnjenje (500);

}

// Program se završava ovdje

Korak 4: Detaljno razumijevanje programa

Pokušat ću objasniti nekoliko dijelova koda.

Funkcije povezane sa naredbom If/else

Ako je temperatura veća od granične vrijednosti, šaljem signal zujalici da se oglasi alarm i prikaže na LCD -u za smanjenje temperature s donjim odjeljkom koda

ako (cel> 26)

{ton (zujalica, 1000);

lcd.clear ();

lcd.print ("Temp iznad praga");

lcd.setCursor (0, 1);

lcd.print (“Smanjenje temp.”);

}

Ako ne, tada se kontrolira slanje trenutne vrijednosti temp na LCD i prikaz te temperature.

else

{noTone (zujalica);

lcd.clear ();

lcd.print ("Temp. pod kontrolom");

lcd.setCursor (0, 1);

lcd.print (“Temp =“);

lcd.print (cel);

lcd.print ("degC");

}

Funkcije povezane sa zujalicom

ton (zujalica, 1000) - ova funkcija šalje signal od 1 khz na pin sa imenom zujalica koji je definiran kao pin 6, a magnetski zujalica je spojena na pin 6. noTone (zujalica) - prestat će slati signal od 1 kHz. Stoga će zvonjenje prestati

Funkcije povezane sa senzorom temperature

Konverzija analogne vrijednosti očitavanja temp u vrijednost C stepena vrši se pomoću funkcije prijenosa koja se može pronaći u AD22100 podatkovnom listu kako je dolje napisano.

Vout = (V +/5 V) × (1.375 V + 22.5 mV/° C × TA) i ista vrijednost je odštampana na LCD ekranu.

Korak 5: Demo instrukcija

Nakon što je program sastavljen i postavljen na Arduino UNO ploču

pokušajmo povećati temperaturu osjetljivu senzorom temperature AD22100 i uživati u sistemu kućne automatizacije.

Za povećanje temperature senzora, dodirujem ga lemilicom dostupnom u Lab -u.

Demo možete pogledati ovdje..

Demo sistema kućne automatizacije

Preporučuje se: