Obsah:

Domácí automatizace: Spustit alarm a zobrazit na LCD displeji, když je teplota nad prahovou hodnotou: 5 kroků
Domácí automatizace: Spustit alarm a zobrazit na LCD displeji, když je teplota nad prahovou hodnotou: 5 kroků

Video: Domácí automatizace: Spustit alarm a zobrazit na LCD displeji, když je teplota nad prahovou hodnotou: 5 kroků

Video: Domácí automatizace: Spustit alarm a zobrazit na LCD displeji, když je teplota nad prahovou hodnotou: 5 kroků
Video: Leap Motion SDK 2024, Červenec
Anonim
Domácí automatizace: Když teplota překročí prahovou hodnotu, spustí se alarm a displej
Domácí automatizace: Když teplota překročí prahovou hodnotu, spustí se alarm a displej

Tento blog předvede, jak vytvořit systém domácí automatizace, který začne vydávat poplach, kdykoli teplota dosáhne více, než je naprogramovaná prahová hodnota. Pokud teplota dosáhne více než prahové hodnoty, bude na LCD displeji stále zobrazovat aktuální teplotu místnosti a potřebnou akci (například: Snížit teplotu). V tomto tutoriálu používám teplotní senzor AD22100, který vyrábí Analog Devices a AG-1005G Buzzer. AD22100 je snímač výstupní teploty napětí se stabilizací signálu

Krok 1: Díly

Než začnete s touto nezničitelnou fungovat, potřebujete tyto díly s sebou

1. Deska Arduino UNO

2. LCD displej (16x2)

3. Bzučák - 2 piny (AC -1005G)

4. Teplotní senzor - 3 piny (AD22100)

Krok 2: Spojení různých částí s Arduino UNO

Připojení LCD s deskou Arduino UNO

LCD RS Pin (Pin 4) s Pin 7 desky Arduino

Pin PIN pro aktivaci LCD (Pin 6) s Pin 8 desky Arduino

LCD D4 Pin (Pin 11) s Pin 9 desky Arduino

LCD D5 Pin (Pin 12) s Pin 10 desky Arduino

Kolík LCD D6 (kolík 13) s kolíkem 11 desky Arduino

Kolík LCD D7 (kolík 14) s kolíkem 12 desky Arduino

Přidejte 10 KΩ pot na +5v (Pot Pin 1) a GND (Pot Pin 3), Připojte prostřední kolík hrnce (kolík hrnce 2) ke kolíku LCD V0 (kolík 3).

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

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

Připojení teplotního senzoru AD22100 k desce Arduino UNO

Pin 1 (V +) AD22100 by měl být připojen k +5 v na desce Arduino.

Pin 2 (Vo) AD22100 by měl být připojen ke kolíku A1 na desce Arduino.

Pin 3 (GND) AD22100 by měl být připojen k GND na desce Arduino

Připojení bzučáku (AC-1005G) s deskou Arduino UNO

Pin 6 PWM výstup desky Arduino by měl být připojen k +ve vstupu bzučáku.

GND desky Arduino by mělo být spojeno s -ve vstupem bzučáku

Krok 3: Kódy Arduino

Zkompilovejte to a nahrajte na desku Arduino a sledujte ukázku systému Home Automation System

// Program začíná zde

int val;

int tempPin = A1;

int bzučák = 6;

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

neplatné nastavení () {

// sem vložte instalační kód, aby se spustil jednou:

lcd.begin (16, 2);

lcd.clear ();

Serial.begin (9600);

pinMode (bzučák, VÝSTUP);

}

void loop () {// sem vložte svůj hlavní kód, aby se spustil opakovaně:

val = analogRead (tempPin); // AD22100 je připojen na Pin A1

/*

*Pro 25C, val přijde jako 900, což znamená

* 900 odpovídá 1,9375 v

* Funkce přenosu je (V +/5) * (1,375 + 22,5 mv/degC * 25 ° C), * Přečtěte si katalogový 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) {

tón (bzučák, 1000);

lcd.clear ();

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

lcd.setCursor (0, 1);

lcd.print („Snížit teplotu“);

}

jiný

{noTone (bzučák);

lcd.clear ();

lcd.print („Teplota pod kontrolou“);

lcd.setCursor (0, 1);

lcd.print („Teplota =“);

lcd.print (cel);

lcd.print („degC“);

}

zpoždění (500);

}

// Program končí zde

Krok 4: Porozumění programu podrobně

Pokusím se vysvětlit několik částí kódu.

Funkce související s příkazem If/else

Pokud je teplota vyšší než prahová hodnota, posílám signál do bzučáku, aby zazněl poplach, a zobrazí se na LCD pro snížení teploty pomocí níže uvedené části kódu

pokud (cel> 26)

{tón (bzučák, 1000);

lcd.clear ();

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

lcd.setCursor (0, 1);

lcd.print („Snížit teplotu“);

}

Pokud tomu tak není, odeslání aktuální hodnoty teploty na LCD a zobrazení této teploty je pod kontrolou.

jiný

{noTone (bzučák);

lcd.clear ();

lcd.print („Teplota pod kontrolou“);

lcd.setCursor (0, 1);

lcd.print („Teplota =“);

lcd.print (cel);

lcd.print („degC“);

}

Funkce související s bzučákem

tón (bzučák, 1000) - tato funkce odešle signál 1 khz na kolík s názvem bzučák, který je definován jako kolík 6 a magnetický bzučák je připojen na kolík 6. žádný tón (bzučák) - zastaví odesílání signálu 1 khz. Zvonění se proto zastaví

Funkce související s teplotním senzorem

Konverze analogové hodnoty čtení teploty na hodnotu deg C se provádí pomocí přenosové funkce, kterou lze zjistit v datovém listu AD22100, jak je uvedeno níže.

Vout = (V +/5 V) × (1,375 V + 22,5 mV/° C × TA) a stejná hodnota je vytištěna na LCD displeji.

Krok 5: Ukázka instruktáží

Jakmile je program zkompilován a nahrán na desku Arduino UNO

zkusme zvýšit teplotu snímanou teplotním čidlem AD22100 a užít si systém domácí automatizace.

Pro zvýšení teploty senzoru se ho dotýkám páječkou dostupnou v Lab.

Zde se můžete podívat na demo..

Ukázka systému domácí automatizace

Doporučuje: