Turinys:
- 1 žingsnis: dalys
- 2 žingsnis: skirtingų dalių prijungimas prie „Arduino UNO“
- 3 žingsnis: „Arduino“kodai
- 4 žingsnis: išsamiai supraskite programą
- 5 žingsnis: „Instructables“demonstracija
Video: Namų automatika: skambinkite aliarmu ir rodykite LCD ekrane, kai temperatūra viršija slenkstinę vertę: 5 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:49
Šiame tinklaraštyje bus parodyta, kaip sukurti namų automatizavimo sistemą, kuri pradės skambėti, kai temperatūra pasieks didesnę nei užprogramuota slenkstinė vertė. LCD ekrane ir toliau bus rodoma dabartinė kambario temperatūra ir reikalingi veiksmai (pvz., Temperatūros mažinimas), kai temperatūra pasiekia didesnę nei ribinė vertė. Šioje pamokoje naudoju AD22100 temperatūros jutiklį, kurį gamina „Analog Devices“ir „AG-1005G Buzzer“. AD22100 yra išėjimo įtampos temperatūros jutiklis su signalo kondicionavimu
1 žingsnis: dalys
Šių dalių jums reikia su savimi prieš pradedant nesugadinamą darbą
1. Arduino UNO valdyba
2. LCD ekranas (16x2)
3. Signalas - 2 kontaktų (AC -1005G)
4. Temperatūros jutiklis - 3 kontaktų (AD22100)
2 žingsnis: skirtingų dalių prijungimas prie „Arduino UNO“
LCD jungtis su „Arduino UNO“plokšte
LCD RS kaištis (4 kaištis) su „Arduino“plokštės 7 kaiščiu
LCD įjunkite kaištį (6 kaištis) su „Arduino“plokštės 8 kaiščiu
LCD D4 kaištis (kaištis 11) su „Arduino“plokštės 9 kaiščiu
LCD D5 kaištis (kaištis 12) su „Arduino“plokštės 10 kaiščiu
LCD D6 kaištis (13 kaištis) su „Arduino“plokštės 11 kaiščiu
LCD D7 kaištis (14 kaištis) su „Arduino“plokštės 12 kaiščiu
Pridėkite 10 KΩ puodą prie +5v (puodo kaištis 1) ir GND (puodo kaištis 3), Prijunkite vidurinį puodo kaištį (puodo kaištis 2) prie LCD V0 kaiščio (3 kaištis).
LCD VDD kaištis (2 kaištis) ir LCD A kaištis (15 kaištis) su +5v „Arduino“lentoje.
LCD VSS kaištis (1 kaištis) ir LCD K kaištis (16 kaištis) su GND „Arduino“lentoje.
AD22100 temperatūros jutiklio jungtis su „Arduino UNO Board“
AD22100 1 kaištis (V +) turi būti prijungtas prie +5 v „Arduino Board“.
AD22100 2 kaištis (Vo) turėtų būti prijungtas prie „Arduino“plokštės A1 kaiščio.
AD22100 3 kaištis (GND) turėtų būti prijungtas prie GND „Arduino“lentoje
„Buzzer“(AC-1005G) jungtis su „Arduino UNO“lenta
6 kaištis „Arduino“plokštės PWM išėjimas turėtų būti prijungtas prie „Buzzer“įvesties +ve.
„Arduino Board“GND turėtų būti prijungtas prie „Buzzer“įvesties
3 žingsnis: „Arduino“kodai
Sudarykite ir įkelkite į „Arduino Board“ir stebėkite namų automatikos sistemos demonstraciją
// Programa prasideda čia
int val;
int tempPin = A1;
int garsinis signalas = 6;
#įtraukti „LiquidCrystal lcd“(7, 8, 9, 10, 11, 12);
void setup () {
// įdėkite čia savo sąrankos kodą, kad paleistumėte vieną kartą:
LCD. pradžia (16, 2);
lcd.clear ();
Serial.begin (9600);
pinMode (garsinis signalas, OUTPUT);
}
void loop () {// čia įdėkite pagrindinį kodą, kad jis būtų paleistas pakartotinai:
val = analogRead (tempPin); // AD22100 prijungtas prie kaiščio A1
/*
*25C atveju val yra 900, tai reiškia
* 900 atitinka 1,9375 v
* Perkėlimo funkcija yra (V +/5) * (1,375 + 22,5 mv/degC * 25 ° C), * Perskaitykite AD22100 duomenų lapą
*/
plūdė cel = (((((1,9375/900) * val) - 1,375)/22,5) * 1000;
float farh = (cel*9)/5 + 32;
Serijinis atspaudas (val);
Serial.println ();
Serial.print („TEMPRATURE =“);
Serial.print (cel); Serial.print („*C“);
Serial.println ();
jei (cel> 26) {
tonas (garsinis signalas, 1000);
lcd.clear ();
lcd.print („Temperatūra viršija slenkstį“);
lcd.setCursor (0, 1);
lcd.print („Sumažinti temperatūrą“);
}
Kitas
{noTone (garsinis signalas);
lcd.clear ();
lcd.print („Temperatūra kontroliuojama“);
lcd.setCursor (0, 1);
lcd.print („Temp =“);
lcd.print (cel);
lcd.print („degC“);
}
vėlavimas (500);
}
// Programa baigiasi čia
4 žingsnis: išsamiai supraskite programą
Pabandysiu paaiškinti keletą kodo skyrių.
Funkcijos, susijusios su „If/else“teiginiu
Jei temperatūra yra didesnė už slenkstinę vertę, siunčiu signalą į garsinį signalą, kad skambėtų pavojaus signalas, o LCD ekrane rodoma, kaip sumažinti temperatūrą žemiau esančioje kodo skiltyje
jei (cel> 26)
{tonas (garsinis signalas, 1000);
lcd.clear ();
lcd.print („Temperatūra virš ribos“);
lcd.setCursor (0, 1);
lcd.print („Sumažinti temperatūrą“);
}
Jei ne, siunčiate dabartinę temperatūros vertę į LCD ir rodote, kad temperatūra yra kontroliuojama.
Kitas
{noTone (garsinis signalas);
lcd.clear ();
lcd.print („Temperatūra kontroliuojama“);
lcd.setCursor (0, 1);
lcd.print („Temp =“);
lcd.print (cel);
lcd.print („degC“);
}
Su „Buzzer“susijusios funkcijos
tonas (garsinis signalas, 1000) - ši funkcija siųs 1 khz signalą į kaištį, pavadintą „buzzer“, kuris yra apibrėžtas kaip 6 kaištis, o magnetinis garsinis signalas prijungtas prie 6. kaiščio. Taigi skambėjimas nustos
Funkcijos, susijusios su temperatūros jutikliu
Temperatūros skaitymo analoginės vertės konvertavimas į deg C vertę atliekamas naudojant perdavimo funkciją, kurią galima rasti AD22100 duomenų lape, kaip parašyta žemiau.
Vout = (V +/5 V) × (1,375 V + 22,5 mV/° C × TA) ir ta pati vertė spausdinama LCD ekrane.
5 žingsnis: „Instructables“demonstracija
Kai programa bus sudaryta ir įkelta į „Arduino UNO“lentą
pabandykime padidinti temperatūrą, kurią nustato temperatūros jutiklis AD22100, ir mėgaukitės namų automatikos sistema.
Norėdami padidinti jutiklio temperatūrą, aš jį liečiu su lituokliu, kurį galima įsigyti laboratorijoje.
Demo galite pasižiūrėti čia..
Namų automatikos sistemos demonstracija
Rekomenduojamas:
„Arduin“namų automatika: 5 žingsniai
„Arduin-home-automatizavimas“: šioje instrukcijoje papasakosiu apie namų automatikos, valdomos ZELIO SR3 PLC ir „Arduino“plokštėmis, naudojamomis šviesai, šilumai ir drėgmei matuoti ir valdyti, pavyzdį. Šią sistemą mano mokiniai naudoja norėdami išmokti automatizavimas
Kalbanti automatika -- Garsas iš „Arduino“-- Balso valdoma automatika -- HC - 05 „Bluetooth“modulis: 9 žingsniai (su paveikslėliais)
Kalbanti automatika || Garsas iš „Arduino“|| Balso valdoma automatika || HC - 05 „Bluetooth“modulis: …………………………. Prenumeruokite mano „YouTube“kanalą, kad gautumėte daugiau vaizdo įrašų …. …. Šiame vaizdo įraše mes sukūrėme kalbančią automatiką. Kai išsiųsite balso komandą per mobilųjį telefoną, ji įjungs namų įrenginius ir siųs atsiliepimus
„Infinity Gauntlet“valdoma namų automatika: 8 žingsniai (su nuotraukomis)
„Infinity Gauntlet“valdoma namų automatika: Ankstesniame projekte aš sukūriau begalybės pirštinę, valdančią šviesos jungiklį. Aš norėjau naudoti šešis akmenis ir kiekvienas akmuo gali valdyti prietaisą, durų užraktą ar apšvietimą. Taigi, aš sukūriau namų automatikos sistemą, naudodamas begalybės pirštines. Šiame projekte
NODE MCU-LED valdymas (paprasta namų automatika): 5 žingsniai
NODE MCU-LED valdymas (paprasta namų automatika): Sveiki, vaikinai, šioje instrukcijoje pamatysime, kaip valdyti LED lemputę naudojant išmanųjį telefoną. Šiam projektui naudosime „Node-MCU“. Norėdami įdiegti „Node MCU“, žiūrėkite žemiau esančią nuorodą bibliotekos (ESP bibliotekos) jūsų „Arduino IDE.NODE MCU-BASICS“{Follow Ste
Kaip atkurti atidarytus aplankus, kai vėl prisijungiate po to, kai atsijungiate: 5 veiksmai
Kaip atkurti atidarytus aplankus, kai iš naujo prisijungiate po to, kai atsijungiate: Gerai, štai tokia situacija, jūs naudojatės kompiuteriu, kai daug ir daug aplankų buvo atidaryti … Tada jūsų mama grįžo namo anksčiau nei tikėtasi! Jūs puikiai žinote, kad jei ji jus pagaus naudojant kompiuterį, tuo tarpu jūs turėtumėte gulėti lovoje, nes