Përmbajtje:

Automatizimi i shtëpisë: Zë një alarm dhe shfaqje në LCD Kur temperatura është mbi vlerën e pragut: 5 hapa
Automatizimi i shtëpisë: Zë një alarm dhe shfaqje në LCD Kur temperatura është mbi vlerën e pragut: 5 hapa

Video: Automatizimi i shtëpisë: Zë një alarm dhe shfaqje në LCD Kur temperatura është mbi vlerën e pragut: 5 hapa

Video: Automatizimi i shtëpisë: Zë një alarm dhe shfaqje në LCD Kur temperatura është mbi vlerën e pragut: 5 hapa
Video: Часть 1 — Аудиокнига «Бэббит» Синклера Льюиса (гл. 01–05) 2024, Nëntor
Anonim
Automatizimi i shtëpisë: Tingëlloni një alarm dhe shfaqeni në LCD kur temperatura është mbi vlerën e pragut
Automatizimi i shtëpisë: Tingëlloni një alarm dhe shfaqeni në LCD kur temperatura është mbi vlerën e pragut

Ky blog do të demonstrojë se si të krijoni një Sistem të Automatizimit të Shtëpisë i cili do të fillojë të tingëllojë një alarm sa herë që temperatura arrin më shumë se vlera e pragut të programuar. Ai do të vazhdojë të shfaqë temperaturën aktuale të dhomës në LCD dhe veprimet e nevojshme (p.sh.: Ulja e Temp) kur temperatura arrin më shumë se vlera e pragut. Në këtë tutorial, unë jam duke përdorur sensorin e temperaturës AD22100 i cili është prodhuar nga Analog Devices dhe AG-1005G Buzzer. AD22100 është një sensor i temperaturës së daljes së tensionit me kondicionim të sinjalit

Hapi 1: Pjesët

Ju keni nevojë për këto pjesë me vete para se të filloni këtë punë të pathyeshme

1. Bordi i Arduino UNO

2. Ekran LCD (16x2)

3. Buzzer - 2 Pin (AC -1005G)

4. Sensori Temp - 3 Pin (AD22100)

Hapi 2: Lidhja e Pjesëve të ndryshme me Arduino UNO

Lidhja LCD me bordin Arduino UNO

LCD RS Pin (Pin 4) me Pin 7 të Arduino Board

LCD Aktivizoni Pin (Pin 6) me Pin 8 të Arduino Board

LCD D4 Pin (Pin 11) me Pin 9 të Arduino Board

LCD D5 Pin (Pin 12) me Pin 10 të Arduino Board

LCD D6 Pin (Pin 13) me Pin 11 të Arduino Board

LCD D7 Pin (Pin 14) me Pin 12 të Arduino Board

Shtoni një tenxhere 10 KΩ në +5v (kunja e tenxhere 1) dhe GND (kunja e tenxhere 3), Lidhni kunjin e mesëm të tenxhere (kunja e tenxhere 2) me kunjin LCD V0 (kunja 3).

LCD VDD Pin (Pin 2) dhe LCD A Pin (Pin 15) me +5v në Arduino Board.

LCD VSS Pin (Pin 1) dhe LCD K Pin (Pin 16) me GND në Arduino Board.

AD22100 Lidhja e sensorit Temp me Arduino UNO Board

Pin 1 (V +) i AD22100 duhet të lidhet me +5 v në Arduino Board.

Pin 2 (Vo) e AD22100 duhet të lidhet me Pin A1 në Arduino Board.

Pin 3 (GND) e AD22100 duhet të lidhet me GND në Arduino Board

Buzzer (AC-1005G) Lidhja me Arduino UNO Board

Dalja PWM 6 e bordit Arduino duhet të lidhet me hyrjen +ve të Buzzer.

GND i Arduino Board duhet të lidhet me -ve hyrje të Buzzer

Hapi 3: Kodet Arduino

Përpiloni dhe Ngarkoni në Arduino Board dhe vëzhgoni demonstrimin e Sistemit të Automatizimit të Shtëpisë

// Programi fillon këtu

int val;

int tempPin = A1;

int zile = 6;

#përfshi LCD LiquidCrystal (7, 8, 9, 10, 11, 12);

void setup () {

// vendosni kodin tuaj të konfigurimit këtu, për të ekzekutuar një herë:

lcd.filloni (16, 2);

lcd.qartë ();

Serial.filloj (9600);

pinMode (zile, OUTPUT);

}

void loop () {// vendosni kodin tuaj kryesor këtu, për të ekzekutuar në mënyrë të përsëritur:

val = analogRead (tempPin); // AD22100 është i lidhur në Pin A1

/*

*Për 25 gradë Celsius, vlera e valutës është 900 që do të thotë

* 900 korrespondon me 1.9375 v

* Funksioni i Transferimit është (V +/5) * (1.375 + 22.5 mv/degC * 25 degC), * Lexoni fletën e të dhënave të 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 ();

nëse (cel> 26) {

toni (zile, 1000);

lcd.qartë ();

lcd.print ("Temp mbi pragun");

lcd.setCursor (0, 1);

lcd.print ("Ulni Temp");

}

tjeter

{noTone (zile);

lcd.qartë ();

lcd.print ("Temp nën kontroll");

lcd.setCursor (0, 1);

lcd.print ("Temp =");

lcd.print (cel);

lcd.print ("degC");

}

vonesë (500);

}

// Programi përfundon këtu

Hapi 4: Kuptimi i Programit në detaje

Do të përpiqem të shpjegoj disa pjesë të kodit.

Funksionet që lidhen me deklaratën If/else

Nëse temperatura është më e madhe se vlera e pragut, unë po dërgoj një sinjal në zile për të dhënë një alarm dhe shfaq në LCD për të ulur temperaturën me pjesën më poshtë të kodit

nëse (cel> 26)

{ton (zile, 1000);

lcd.qartë ();

lcd.print ("Temp mbi pragun");

lcd.setCursor (0, 1);

lcd.print ("Ulni Temp");

}

Nëse jo, atëherë dërgimi i vlerës aktuale të temperaturës në LCD dhe shfaqja e asaj temperature është nën kontroll.

tjeter

{noTone (zile);

lcd.qartë ();

lcd.print ("Temp nën kontroll");

lcd.setCursor (0, 1);

lcd.print ("Temp =");

lcd.print (cel);

lcd.print ("degC");

}

Funksionet që lidhen me Buzzer

toni (zile, 1000) - ky funksion do të dërgojë një sinjal 1 khz në pinin e quajtur zile që përcaktohet si Pin 6 dhe zile magnetike është e lidhur në Pin 6.noTone (zile) - do të ndalojë dërgimin e sinjalit 1 khz. Prandaj, zilja do të ndalet

Funksionet që lidhen me Sensorin Temp

Shndërrimi i vlerës analoge të leximit të temperaturës në vlerën deg C bëhet duke përdorur një funksion transferimi i cili mund të gjendet në fletën e të dhënave AD22100 siç është shkruar më poshtë.

Vout = (V +/5 V) × (1.375 V + 22.5 mV/° C × TA) dhe e njëjta vlerë printohet në ekranin LCD.

Hapi 5: Demo e udhëzimeve

Pasi programi të përpilohet dhe ngarkohet në tabelën Arduino UNO

le të përpiqemi të rrisim temperaturën e ndjerë nga sensori i temperaturës AD22100 dhe të shijojmë sistemin e Automatizimit të Shtëpisë.

Për rritjen e temperaturës së sensorit, po e prek me hekur bashkues të disponueshëm në Lab.

Këtu mund të hidhni një sy në demonstrim..

Demo e Sistemit të Automatizimit të Shtëpisë

Recommended: