Sisällysluettelo:

Koti -automaatio: Hälytys ja LCD -näyttö, kun lämpötila on kynnysarvon yläpuolella: 5 vaihetta
Koti -automaatio: Hälytys ja LCD -näyttö, kun lämpötila on kynnysarvon yläpuolella: 5 vaihetta

Video: Koti -automaatio: Hälytys ja LCD -näyttö, kun lämpötila on kynnysarvon yläpuolella: 5 vaihetta

Video: Koti -automaatio: Hälytys ja LCD -näyttö, kun lämpötila on kynnysarvon yläpuolella: 5 vaihetta
Video: Kosketuksettoman MLX90614-lämpötila-anturin käyttö EP32: n kautta Bluetoothilla 2024, Heinäkuu
Anonim
Kotiautomaatio: Hälytys ja LCD -näyttö, kun lämpötila on kynnysarvon yläpuolella
Kotiautomaatio: Hälytys ja LCD -näyttö, kun lämpötila on kynnysarvon yläpuolella

Tämä blogi näyttää kuinka tehdä kotiautomaatiojärjestelmä, joka alkaa antaa hälytyksen aina, kun lämpötila saavuttaa yli ohjelmoidun kynnysarvon. Se näyttää huoneen nykyisen lämpötilan nestekidenäytössä ja tarvittavat toimenpiteet (esim. Alenna lämpötilaa), kun lämpötila saavuttaa kynnysarvon. Tässä opetusohjelmassa käytän AD22100-lämpötila-anturia, jonka ovat valmistaneet Analog Devices ja AG-1005G Buzzer. AD22100 on jännitteen ulostulolämpötila -anturi, jossa on signaalin käsittely

Vaihe 1: Osat

Tarvitset nämä osat mukanasi ennen kuin aloitat tämän tuhoutumattoman toimivuuden

1. Arduino UNO Board

2. LCD -näyttö (16x2)

3. summeri - 2 -nastainen (AC -1005G)

4. Lämpötila -anturi - 3 -nastainen (AD22100)

Vaihe 2: Eri osien liittäminen Arduino UNO: n kanssa

LCD -liitäntä Arduino UNO -levyllä

LCD RS -tappi (nasta 4) ja Arduino Boardin nasta 7

Nestekidenäytön nasta (nasta 6) Arduino Boardin nastalla 8

LCD D4 -nasta (nasta 11) ja Arduino Boardin nasta 9

LCD D5 -nasta (nasta 12) ja Arduino -levyn nasta 10

LCD D6 -nasta (nasta 13) ja Arduino Boardin tappi 11

LCD D7 -nasta (nasta 14) ja Arduino Boardin tappi 12

Lisää 10 KΩ: n potti +5v (potti 1) ja GND (potti 3), Liitä kattilan keskimmäinen tappi (potti 2) nestekidenäytön V0 -nastaan (nasta 3).

LCD VDD -tappi (nasta 2) ja LCD -A -nasta (nasta 15) +5v Arduino -kortilla.

LCD VSS -tappi (nasta 1) ja LCD K -nasta (nasta 16), jossa GND Arduino -piirilevyssä.

AD22100 Lämpötila -anturiliitäntä Arduino UNO -levyn kanssa

AD22100: n nasta 1 (V +) on liitettävä Arduino Boardin +5 v: een.

AD22100: n nasta 2 (Vo) tulee liittää Arduino Boardin nastaan A1.

AD22100: n nasta 3 (GND) tulee liittää Arduino Boardin GND: hen

Summeri (AC-1005G) Liitäntä Arduino UNO Boardiin

Nasta 6 Arduino -kortin PWM -lähtö on kytkettävä Buzzerin +ve -tuloon.

Arduino Boardin GND tulee liittää Buzzerin -ve -tuloon

Vaihe 3: Arduino -koodit

Kokoa se ja lataa se Arduino Boardille ja seuraa Home Automation System -esittelyä

// Ohjelma alkaa tästä

int val;

int tempPin = A1;

int summeri = 6;

#sisältää LiquidCrystal lcd (7, 8, 9, 10, 11, 12);

void setup () {

// laita asennuskoodi tähän, jotta se suoritetaan kerran:

lcd. alku (16, 2);

lcd.clear ();

Sarja.alku (9600);

pinMode (summeri, OUTPUT);

}

void loop () {// laita pääkoodisi tänne toistettavaksi:

val = analoginenLead (tempPin); // AD22100 on kytketty nastaan A1

/*

*25C: lle val tulee 900, mikä tarkoittaa

* 900 vastaa 1,9375 v

* Siirtotoiminto on (V +/5) * (1,375 + 22,5 mv/degC * 25 degC), * Lue AD22100: n tietolomake

*/

float cel = (((((1,9375/900) * val) - 1,375)/22,5) * 1000;

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

Sarjajälki (val);

Sarja.println ();

Serial.print ("LÄMPÖTILA =");

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

Sarja.println ();

jos (cel> 26) {

ääni (summeri, 1000);

lcd.clear ();

lcd.print ("Lämpötila kynnyksen yläpuolella");

lcd.setCursor (0, 1);

lcd.print (“Pienennä lämpötilaa”);

}

muu

{noTone (summeri);

lcd.clear ();

lcd.print (“Lämpötila hallinnassa”);

lcd.setCursor (0, 1);

lcd.print ("Lämpötila =");

lcd.print (cel);

lcd.print (“degC”);

}

viive (500);

}

// Ohjelma päättyy tähän

Vaihe 4: Ohjelman ymmärtäminen yksityiskohtaisesti

Yritän selittää muutaman koodin osan.

If/else -lausekkeeseen liittyvät toiminnot

Jos lämpötila on korkeampi kuin kynnysarvo, lähetän summerille signaalin hälytyksen antamiseksi ja näytetään nestekidenäytössä lämpötilan alentamiseksi koodin alla olevan osan avulla

jos (cel> 26)

{ääni (summeri, 1000);

lcd.clear ();

lcd.print ("Lämpötila kynnyksen yläpuolella");

lcd.setCursor (0, 1);

lcd.print (“Pienennä lämpötilaa”);

}

Jos ei, lähetä nykyinen lämpötila -arvo nestekidenäyttöön ja näyttää, että lämpötila on hallinnassa.

muu

{noTone (summeri);

lcd.clear ();

lcd.print ("Lämpötila hallinnassa");

lcd.setCursor (0, 1);

lcd.print ("Lämpötila =");

lcd.print (cel);

lcd.print (“degC”);

}

Summeriin liittyvät toiminnot

merkkiääni (summeri, 1000) - tämä toiminto lähettää 1 khz signaalin nastaiseen summeriin, joka on määritetty nastaksi 6 ja magneettinen summeri on kytketty nastaan 6. noTone (summeri) - lopettaa 1 khz signaalin lähettämisen. Soitto lakkaa siis

Lämpötila -anturiin liittyvät toiminnot

Lämpötilan lukemisen analogisen arvon muuntaminen deg C -arvoksi suoritetaan siirtotoiminnon avulla, joka voidaan selvittää AD22100 -tietolomakkeesta, kuten alla on kirjoitettu.

Vout = (V +/5 V) × (1,375 V + 22,5 mV/° C × TA) ja sama arvo tulostetaan nestekidenäyttöön.

Vaihe 5: Instructables -esittely

Kun ohjelma on koottu ja ladattu Arduino UNO -levylle

Yritetään nostaa lämpötila -anturin AD22100 havaitsemaa lämpötilaa ja nauttia kodin automaatiojärjestelmästä.

Anturin lämpötilan lisäämiseksi kosketan sitä Labissa saatavalla juotosraudalla.

Demon voit katsoa täältä..

Kodin automaatiojärjestelmän esittely

Suositeltava: