Sadržaj:

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

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

Video: Kućna automatizacija: Oglasite alarm i prikaz na LCD -u kada je temperatura iznad vrijednosti praga: 5 koraka
Video: The Choice is Ours (2016) Official Full Version 2024, Srpanj
Anonim
Kućna automatizacija: Oglasite alarm i prikaz na LCD -u kada je temperatura iznad praga
Kućna automatizacija: Oglasite alarm i prikaz na LCD -u kada je temperatura iznad praga

Ovaj blog će pokazati kako napraviti sustav kućne automatizacije koji će početi oglašavati alarm kad temperatura dosegne više od programirane vrijednosti praga. Nastavit će prikazivati trenutnu temperaturu prostorije na LCD -u i potrebne radnje (npr.: Smanjenje temperature) kada temperatura dosegne više od praga. U ovom vodiču koristim osjetnik temperature AD22100 koji je proizveden od strane 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 počnete s ovim neuništivim radom

1. Arduino UNO ploča

2. LCD zaslon (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 s Arduino UNO pločom

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

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

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

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

LCD D6 pin (pin 13) s 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 srednju iglu lonca (pin 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) s GND na Arduino ploči.

Povezivanje osjetnika temperature AD22100 s Arduino UNO pločom

Pin 1 (V +) AD22100 trebao bi biti spojen na +5 v na Arduino ploči.

Pin 2 (Vo) AD22100 trebao bi biti spojen na pin A1 na Arduino ploči.

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

Zujalica (AC-1005G) Povezivanje s Arduino UNO pločom

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

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

Korak 3: Arduino kodovi

Sastavite ga i prenesite na Arduino ploču te promatrajte demo sustava 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 () {// ovdje unesite svoj glavni kôd, za ponavljanje:

val = analogRead (tempPin); // AD22100 je spojen na pin A1

/*

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

* 900 odgovara 1.9375 v

* Funkcija prijenosa je (V +/5) * (1,375 + 22,5 mv/degC * 25 ° C), * Pročitajte tehnički list AD22100

*/

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

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

Serijski.ispis (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 temperature");

}

drugo

{noTone (zujalica);

lcd.clear ();

lcd.print ("Temp pod kontrolom");

lcd.setCursor (0, 1);

lcd.print ("Temp =");

lcd.tisak (cel);

lcd.print ("degC");

}

kašnjenje (500);

}

// Program završava ovdje

Korak 4: Detaljno razumijevanje programa

Pokušat ću objasniti nekoliko dijelova koda.

Funkcije povezane s naredbom If/else

Ako je temperatura veća od granične vrijednosti, šaljem signal zvučniku za oglašavanje alarma i prikazuje se 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 temperature");

}

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

drugo

{noTone (zujalica);

lcd.clear ();

lcd.print ("Temp pod kontrolom");

lcd.setCursor (0, 1);

lcd.print ("Temp =");

lcd.tisak (cel);

lcd.print ("degC");

}

Funkcije povezane sa zujalicom

ton (zujalica, 1000) - ova funkcija šalje signal od 1 khz na pin nazvan 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 s senzorom temperature

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

Vout = (V +/5 V) × (1,375 V + 22,5 mV/° C × TA) i ista vrijednost je ispisana na LCD zaslonu.

Korak 5: Demo instrukcija

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

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

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

Demo možete pogledati ovdje..

Demo sustava kućne automatizacije

Preporučeni: