Obsah:

Domáca automatizácia: Spustite alarm a zobrazte na LCD displeji, keď je teplota nad prahovou hodnotou: 5 krokov
Domáca automatizácia: Spustite alarm a zobrazte na LCD displeji, keď je teplota nad prahovou hodnotou: 5 krokov

Video: Domáca automatizácia: Spustite alarm a zobrazte na LCD displeji, keď je teplota nad prahovou hodnotou: 5 krokov

Video: Domáca automatizácia: Spustite alarm a zobrazte na LCD displeji, keď je teplota nad prahovou hodnotou: 5 krokov
Video: Подключение внешней сирены к системе сигнализации через Ajax Relay. #ajax #ajaxsystems 2024, Júl
Anonim
Domáca automatizácia: Spustite alarm a zobrazte na LCD displeji, keď je teplota nad prahovou hodnotou
Domáca automatizácia: Spustite alarm a zobrazte na LCD displeji, keď je teplota nad prahovou hodnotou

Tento blog ukáže, ako vytvoriť domáci automatizačný systém, ktorý začne vydávať poplach vždy, keď teplota dosiahne viac ako naprogramovanú prahovú hodnotu. Keď teplota dosiahne viac ako prahovú hodnotu, bude naďalej zobrazovať aktuálnu teplotu miestnosti na LCD displeji a potrebné opatrenia (napr. Znížiť teplotu). V tomto návode používam teplotný snímač AD22100, ktorý vyrábajú spoločnosti Analog Devices a AG-1005G Buzzer. AD22100 je snímač výstupnej teploty napätia so stabilizáciou signálu

Krok 1: Diely

Tieto diely potrebujete so sebou skôr, ako začnete pracovať s týmto nezničiteľným

1. Doska Arduino UNO

2. LCD displej (16x2)

3. Bzučiak - 2 kolíky (AC -1005G)

4. Snímač teploty - 3 kolíky (AD22100)

Krok 2: Spojenie rôznych častí s Arduino UNO

Pripojenie LCD k doske Arduino UNO

Kolík LCD RS RS (kolík 4) s kolíkom 7 dosky Arduino

Kolík umožňujúci LCD (pin 6) s pinom 8 dosky Arduino

Kolík LCD D4 (pin 11) s kolíkom 9 dosky Arduino

Kolík LCD D5 (kolík 12) s kolíkom 10 na doske Arduino

Kolík LCD D6 (kolík 13) s kolíkom 11 na doske Arduino

Kolík LCD D7 (pin 14) s pinom 12 dosky Arduino

Pridajte 10 KΩ hrniec k +5v (hrniec 1) a GND (hrot 3), Pripojte stredný hrniec hrnca (kolík hrnce 2) k kolíku LCD V0 (kolík 3).

Pin VDD LCD (pin 2) a pin A LCD (pin 15) s +5v na doske Arduino.

Pin PIN VSS (pin 1) a LCD K pin (pin 16) s GND na doske Arduino.

Pripojenie teplotného senzora AD22100 k doske Arduino UNO

Pin 1 (V +) AD22100 by mal byť pripojený k +5 v na doske Arduino.

Pin 2 (Vo) AD22100 by mal byť pripojený k pinu A1 na doske Arduino.

Pin 3 (GND) AD22100 by mal byť pripojený k GND na doske Arduino

Bzučiak (AC-1005G) Pripojenie k doske Arduino UNO

Pin 6 PWM výstup dosky Arduino by mal byť pripojený k +ve vstupu bzučiaka.

GND dosky Arduino by malo byť spojené s -ve vstupom bzučiaka

Krok 3: Kódy Arduino

Skompilovajte ho a nahrajte na Arduino Board a sledujte ukážku systému Home Automation System

// Program sa začína tu

int val;

int tempPin = A1;

int bzučiak = 6;

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

neplatné nastavenie () {

// sem vložte svoj inštalačný kód, aby sa spustil raz:

lcd.begin (16, 2);

lcd.clear ();

Serial.begin (9600);

pinMode (bzučiak, VÝSTUP);

}

void loop () {// sem vložte svoj hlavný kód, aby sa spúšťal opakovane:

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

/*

*Pri 25 ° C hodnota val predstavuje 900, čo znamená

* 900 zodpovedá 1,9375 v

* Funkcia prenosu je (V +/5) * (1,375 + 22,5 mv/degC * 25 ° C), * Prečítajte si technický 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 („TEPLOTA =“);

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

Serial.println ();

ak (cel> 26) {

tón (bzučiak, 1000);

lcd.clear ();

lcd.print („Teplota nad prahovou hodnotou“);

lcd.setCursor (0, 1);

lcd.print („Znížiť teplotu“);

}

inak

{noTone (bzučiak);

lcd.clear ();

lcd.print („Teplota pod kontrolou“);

lcd.setCursor (0, 1);

lcd.print („Teplota =“);

lcd.print (cel);

lcd.print („degC“);

}

oneskorenie (500);

}

// Program sa končí tu

Krok 4: Porozumenie programu podrobne

Pokúsim sa vysvetliť niekoľko častí kódu.

Funkcie súvisiace s príkazom If/else

Ak je teplota väčšia ako prahová hodnota, posielam signál do bzučiaka, aby zaznel alarm a na LCD displeji sa zníži teplota pomocou nižšie uvedenej časti kódu.

ak (cel> 26)

{tón (bzučiak, 1000);

lcd.clear ();

lcd.print („Teplota nad prahovou hodnotou“);

lcd.setCursor (0, 1);

lcd.print („Znížiť teplotu“);

}

Ak nie, potom odoslanie aktuálnej hodnoty teploty na LCD a zobrazenie tejto teploty je pod kontrolou.

inak

{noTone (bzučiak);

lcd.clear ();

lcd.print („Teplota pod kontrolou“);

lcd.setCursor (0, 1);

lcd.print („Teplota =“);

lcd.print (cel);

lcd.print („degC“);

}

Funkcie súvisiace s bzučiakom

tón (bzučiak, 1000) - táto funkcia vyšle signál 1 khz na kolík s názvom bzučiak, ktorý je definovaný ako kolík 6 a magnetický bzučiak je pripojený na kolíku 6. žiadny tón (bzučiak) - zastaví odosielanie signálu 1 khz. Zvonenie sa preto zastaví

Funkcie súvisiace s teplotným senzorom

Konverzia analógovej hodnoty čítania teplôt na hodnotu ° C sa vykonáva pomocou prenosovej funkcie, ktorú je možné nájsť v technickom liste AD22100, ako je uvedené nižšie.

Vout = (V +/5 V) × (1,375 V + 22,5 mV/° C × TA) a rovnaká hodnota je vytlačená na LCD displeji.

Krok 5: Ukážka inštrukcií

Akonáhle je program zostavený a nahraný na dosku Arduino UNO

skúsme zvýšiť teplotu snímanú teplotným senzorom AD22100 a užívať si systém domácej automatizácie.

Aby som zvýšil teplotu senzora, dotýkam sa ho spájkovačkou dostupnou v Laboratóriu.

Môžete sa pozrieť na demo tu..

Ukážka systému automatizácie domácnosti

Odporúča: