INHOUDSOPGAWE:

Tuisautomatisering: maak 'n alarm en vertoon op die LCD as die temperatuur hoër is as die drempelwaarde: 5 stappe
Tuisautomatisering: maak 'n alarm en vertoon op die LCD as die temperatuur hoër is as die drempelwaarde: 5 stappe

Video: Tuisautomatisering: maak 'n alarm en vertoon op die LCD as die temperatuur hoër is as die drempelwaarde: 5 stappe

Video: Tuisautomatisering: maak 'n alarm en vertoon op die LCD as die temperatuur hoër is as die drempelwaarde: 5 stappe
Video: Arduino Tutorial 28 - DHT11 Temperature Sensor with LCD | SunFounder's ESP32 IoT Learnig kit 2024, Julie
Anonim
Tuisautomatisering: maak 'n alarm en vertoon op die LCD as die temperatuur hoër is as die drempelwaarde
Tuisautomatisering: maak 'n alarm en vertoon op die LCD as die temperatuur hoër is as die drempelwaarde

Hierdie blog sal demonstreer hoe u 'n tuisautomatiseringstelsel kan maak wat alarm sal laat klink wanneer die temperatuur meer as die geprogrammeerde drempelwaarde bereik. Dit sal die huidige temperatuur van die kamer op die LCD weergee en die nodige aksie (byvoorbeeld: Verlaag temp) wanneer die temperatuur meer as die drempelwaarde bereik. In hierdie tutoriaal gebruik ek die AD22100 temp sensor wat vervaardig word deur Analog Devices en AG-1005G Buzzer. AD22100 is 'n spanningsuitvoertemperatuursensor met seinkondisionering

Stap 1: Onderdele

U het hierdie dele by u nodig voordat u met hierdie onverwoestbare werk kan begin

1. Arduino UNO Raad

2. LCD -skerm (16x2)

3. Gonser - 2 penne (AC -1005G)

4. Temp sensor - 3 speld (AD22100)

Stap 2: Verbind die verskillende dele met Arduino UNO

LCD -aansluiting met Arduino UNO -bord

LCD RS -pen (pen 4) met pen 7 van Arduino -bord

LCD aktiveer pen (pen 6) met pen 8 van Arduino -bord

LCD D4 -pen (pen 11) met pen 9 van Arduino -bord

LCD D5 -pen (pen 12) met pen 10 van Arduino -bord

LCD D6 -pen (pen 13) met pen 11 van Arduino -bord

LCD D7 -pen (pen 14) met pen 12 van Arduino -bord

Voeg 'n 10 KΩ Pot by +5v (Pot Pin 1) en GND (Pot Pin 3), Koppel die middelste pen van die pot (potpen 2) aan die LCD V0 -pen (pen 3).

LCD VDD Pin (Pin 2) en LCD A Pin (Pin 15) met +5v op Arduino Board.

LCD VSS -pen (pen 1) en LCD K -pen (pen 16) met GND op Arduino -bord.

AD22100 Temp Sensor verbinding met Arduino UNO Board

Pin 1 (V +) van AD22100 moet gekoppel wees aan +5 v op Arduino Board.

Speld 2 (Vo) van AD22100 moet gekoppel word aan pen A1 op Arduino -bord.

Speld 3 (GND) van AD22100 moet op die Arduino Board met GND verbind word

Gonser (AC-1005G) Aansluiting met Arduino UNO Board

Pin 6 PWM -uitset van die Arduino -bord moet gekoppel word aan die +ve -ingang van die buzzer.

GND van Arduino Board moet verbind word met -ve insette van Buzzer

Stap 3: Arduino -kodes

Stel dit saam en laai dit op die Arduino Board op en kyk na die demo van Home Automation System

// Die program begin hier

int val;

int tempPin = A1;

int gonser = 6;

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

ongeldige opstelling () {

// sit u opstellingskode hier om een keer te werk:

lcd.begin (16, 2);

lcd.clear ();

Serial.begin (9600);

pinMode (zoemer, UITGANG);

}

void loop () {// plaas u hoofkode hier om herhaaldelik te werk:

val = analogRead (tempPin); // AD22100 is verbind met Pin A1

/*

*Vir 25C beteken val 900, wat beteken

* 900 stem ooreen met 1.9375 v

* Oordragfunksie is (V +/5) * (1.375 + 22.5 mv/degC * 25 degC), * Lees die datablad van 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 ();

as (cel> 26) {

toon (gonser, 1000);

lcd.clear ();

lcd.print ("Temp bo drempel");

lcd.setCursor (0, 1);

lcd.print ("Temp verlaag");

}

anders

{noTone (gonser);

lcd.clear ();

lcd.print (“Temp under control”);

lcd.setCursor (0, 1);

lcd.print ("Temp =");

lcd.print (cel);

lcd.print ("degC");

}

vertraging (500);

}

// Die program eindig hier

Stap 4: Verstaan die program in detail

Ek sal probeer om 'n paar gedeeltes van die kode te verduidelik.

Funksies wat verband hou met If/else -stelling

As die temperatuur groter as die drempelwaarde is, stuur ek 'n sein na die gonser om alarm te maak en op die LCD te sien om die temperatuur te verlaag met die onderstaande gedeelte van die kode

as (cel> 26)

{toon (zoemer, 1000);

lcd.clear ();

lcd.print ("Temp bo drempel");

lcd.setCursor (0, 1);

lcd.print ("Temp verlaag");

}

Indien nie, stuur dan die huidige waarde van die temperatuur na die LCD en toon dat die temperatuur in beheer is.

anders

{noTone (gonser);

lcd.clear ();

lcd.print (“Temp under control”);

lcd.setCursor (0, 1);

lcd.print ("Temp =");

lcd.print (cel);

lcd.print ("degC");

}

Funksies wat verband hou met Buzzer

toon (zoemer, 1000) - hierdie funksie stuur 'n 1 khz -sein na 'n pen met die gonser, wat gedefinieer word as pen 6 en die magnetiese zoemer is verbind met pen 6. geen toon (zoemer) - sal nie meer 'n 1 khz -sein stuur nie. Daarom sal die lui stop

Funksies wat verband hou met temp sensor

Omskakeling van die analoge waarde van die tempelees na die graad C -waarde word gedoen met behulp van 'n oordragfunksie wat in die AD22100 -datablad uitgevoer kan word, soos hieronder geskryf.

Vout = (V +/5 V) × (1.375 V + 22.5 mV/° C × TA) en dieselfde waarde word op die LCD -skerm gedruk.

Stap 5: Demo van die instruksies

Sodra die program saamgestel en opgelaai is op die Arduino UNO -bord

laat ons probeer om die temperatuur wat deur die temperatuursensor AD22100 waargeneem word, te verhoog en geniet die tuisautomatiseringstelsel.

Om die temperatuur van die sensor te verhoog, raak ek dit aan met soldeerbout wat in Lab beskikbaar is.

U kan die demo hier bekyk..

Demo van tuisautomatiseringstelsel

Aanbeveel: