Բովանդակություն:

Տնային ավտոմատացում. Sարթուցիչ հնչեցրեք և ցուցադրեք LCD- ով, երբ ջերմաստիճանը շեմից բարձր է. Արժեքը `5 քայլ
Տնային ավտոմատացում. Sարթուցիչ հնչեցրեք և ցուցադրեք LCD- ով, երբ ջերմաստիճանը շեմից բարձր է. Արժեքը `5 քայլ

Video: Տնային ավտոմատացում. Sարթուցիչ հնչեցրեք և ցուցադրեք LCD- ով, երբ ջերմաստիճանը շեմից բարձր է. Արժեքը `5 քայլ

Video: Տնային ավտոմատացում. Sարթուցիչ հնչեցրեք և ցուցադրեք LCD- ով, երբ ջերմաստիճանը շեմից բարձր է. Արժեքը `5 քայլ
Video: Умный беспроводной датчик температуры и влажности дистанционное управление от Tuya для умного дома 2024, Հուլիսի
Anonim
Տնային ավտոմատացում. Ահազանգ հնչեցրեք և ցուցադրեք LCD- ով, երբ ջերմաստիճանը շեմային արժեքից բարձր է
Տնային ավտոմատացում. Ահազանգ հնչեցրեք և ցուցադրեք LCD- ով, երբ ջերմաստիճանը շեմային արժեքից բարձր է

Այս բլոգը ցույց կտա, թե ինչպես կարելի է ստեղծել տան ավտոմատացման համակարգ, որը կսկսի ահազանգ հնչեցնել, երբ ջերմաստիճանը հասնի ծրագրված շեմի արժեքից ավելին: Այն կշարունակի ցուցադրել սենյակի ընթացիկ ջերմաստիճանը LCD- ով և անհրաժեշտ գործողությունները (օրինակ ՝ ջերմաստիճանի նվազում), երբ ջերմաստիճանը հասնի շեմային արժեքից ավելիին: Այս ձեռնարկում ես օգտագործում եմ AD22100 ջերմաստիճանի տվիչ, որն արտադրվում է Analog Devices- ի և AG-1005G Buzzer- ի կողմից: AD22100- ը ազդանշանային կոնդիցիոներով լարման ելքային ջերմաստիճանի տվիչ է:

Քայլ 1: Մասեր

Այս մասերը ձեզ հետ պետք են, նախքան այս անխորտակելի աշխատանքը սկսելը

1. Arduino UNO- ի խորհուրդ

2. LCD էկրան (16x2)

3. Buzzer - 2 փին (AC -1005G)

4. Temp ցուցիչ - 3 պին (AD22100)

Քայլ 2. Տարբեր մասերի միացում Arduino UNO- ի հետ

LCD միացում Arduino UNO տախտակի հետ

LCD RS Pin (Pin 4) Arduino Board- ի 7 -րդ Pin- ով

LCD- ն միացրեք Pin (Pin 6) Arduino տախտակի Pin 8 -ով

LCD D4 Pin (Pin 11) Arduino Board- ի 9 -րդ Pin- ով

LCD D5 Pin (Pin 12) Arduino Board- ի Pin 10 -ով

LCD D6 Pin (Pin 13) Arduino Board- ի 11 -րդ Pin- ով

LCD D7 Pin (Pin 14) Arduino Board- ի 12 -րդ Pin- ով

Ավելացրեք 10 KΩ կաթսա +5v- ին (զամբյուղի Pin 1) և GND (զամբյուղի Pin 3), Միացրեք զամբյուղի միջին քորոցը (զամբյուղի կապը 2) LCD V0 փինին (պտուտակ 3):

LCD VDD Pin (Pin 2) և LCD A Pin (Pin 15) Arduino- ի տախտակի վրա +5v- ով:

LCD VSS Pin (Pin 1) և LCD K Pin (Pin 16) Arduino- ի տախտակի վրա GND- ով:

AD22100 Temp Sensor միացում Arduino UNO խորհրդի հետ

AD22100- ի PIN 1 (V +) - ը պետք է միացված լինի +5 v- ին Arduino Board- ում:

AD22100- ի 2 -րդ կապը (Vo) պետք է միացված լինի Arduino- ի տախտակի A1 կապին:

AD22100- ի Pin 3 (GND) - ը պետք է միացված լինի GND- ին Arduino Board- ում

Buzzer (AC-1005G) Միացում Arduino UNO խորհրդի հետ

Arduino- ի տախտակի 6 PWM ելքը պետք է միացված լինի Buzzer- ի +ve մուտքին:

Arduino- ի տախտակի GND- ը պետք է միացված լինի Buzzer- ի վեց մուտքագրման հետ

Քայլ 3: Arduino կոդեր

Կազմեք այն և վերբեռնեք Arduino- ի տախտակին և դիտեք Home Automation System- ի ցուցադրական տարբերակը

// Programրագիրը սկսվում է այստեղ

int val;

int tempPin = A1;

int ազդանշան = 6;

#ներառել LiquidCrystal LCD (7, 8, 9, 10, 11, 12);

void setup () {

// տեղադրեք ձեր տեղադրման կոդը այստեղ ՝ մեկ անգամ գործարկելու համար.

lcd. սկսել (16, 2);

lcd. հստակ ();

Serial.begin (9600);

pinMode (ազդանշանային, OUTPUT);

}

void loop () {// տեղադրեք ձեր հիմնական կոդը այստեղ ՝ բազմիցս գործարկելու համար.

val = analogRead (tempPin); // AD22100- ը միացված է Pin A1- ում

/*

*25C- ի դեպքում val- ը 900 է նշանակում

* 900 -ը համապատասխանում է 1.9375 v

* Փոխանցման գործառույթն է (V +/5) * (1.375 + 22.5 մվ/degC * 25 degC), * Կարդացեք 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 ();

եթե (բջջ.> 26) {

տոն (ազդանշան, 1000);

lcd. հստակ ();

lcd.print («pերմաստիճանը շեմից բարձր»);

lcd.setCursor (0, 1);

lcd.print («Նվազեցնել ջերմաստիճանը»);

}

ուրիշ

{noTone (ազդանշան);

lcd. հստակ ();

lcd.print («pերմաստիճանը վերահսկողության տակ է»);

lcd.setCursor (0, 1);

lcd.print («Temp =“);

lcd.print (cel);

lcd.print («degC»);

}

ուշացում (500);

}

// endsրագիրն ավարտվում է այստեղ

Քայլ 4. Programրագիրը մանրամասնորեն հասկանալը

Ես կփորձեմ բացատրել ծածկագրի մի քանի հատված:

Եթե/այլ հայտարարության հետ կապված գործառույթներ

Եթե ջերմաստիճանը գերազանցում է շեմային արժեքը, ես ազդանշան եմ ուղարկում ազդանշանին ազդանշան հնչեցնելու համար և ցուցադրում LCD- ով `ջերմաստիճանի նվազեցման համար` կոդի ստորև նշված հատվածով:

եթե (բջջ.> 26)

{տոն (ազդանշան, 1000);

lcd. հստակ ();

lcd.print («pերմաստիճանը շեմից բարձր»);

lcd.setCursor (0, 1);

lcd.print («Նվազեցնել ջերմաստիճանը»);

}

Եթե ոչ, ապա ջերմաստիճանի ընթացիկ արժեքը LCD- ին ուղարկելը և այդ ջերմաստիճանի ցուցադրումը վերահսկվում է:

ուրիշ

{noTone (ազդանշան);

lcd. հստակ ();

lcd.print («pերմաստիճանը վերահսկողության տակ է»);

lcd.setCursor (0, 1);

lcd.print («Temp =“);

lcd.print (cel);

lcd.print («degC»);

}

Buzzer- ի հետ կապված գործառույթներ

ազդանշան (ազդանշան, 1000) - այս գործառույթը 1 կՀց ազդանշան կուղարկի ազդանշանային ազդանշանին, որը սահմանվում է որպես Pin 6, և Magnetic buzzer- ը միացված է Pin 6.noTone- ում (ազդանշան) - կդադարեցնի ուղարկել 1 կՀց ազդանշան: Այսպիսով, զանգը կդադարի

Temp Sensor- ի հետ կապված գործառույթներ

Tempերմաստիճանի ընթերցման անալոգային արժեքի փոխարկումը deg C արժեքին կատարվում է փոխանցման գործառույթի միջոցով, որը կարելի է գտնել AD22100 տվյալների թերթում, ինչպես գրված է ստորև:

Vout = (V +/5 V) × (1.375 V + 22.5 mV/° C × TA) և նույն արժեքը տպված է LCD էկրանին:

Քայլ 5: Հրահանգների ցուցադրում

Երբ ծրագիրը կազմվում և վերբեռնվում է Arduino UNO- ի տախտակին

եկեք փորձենք բարձրացնել AD22100 ջերմաստիճանի տվիչով զգացող ջերմաստիճանը և վայելենք Տան ավտոմատացման համակարգը:

Սենսորի ջերմաստիճանը բարձրացնելու համար ես շոշափում եմ այն լաբորատորիայում առկա զոդման երկաթով:

Դեմոյին կարող եք նայել այստեղ..

Տան ավտոմատացման համակարգի ցուցադրում

Խորհուրդ ենք տալիս: