Turinys:
- 1 žingsnis: reikalingos dalys
- 2 žingsnis: vielos kepimo lenta temperatūros jutikliui
- 3 žingsnis: Pjezo garsinis signalas
- 4 žingsnis: pridėkite mygtukus
- 5 veiksmas: prijunkite LCD ekraną prie atskiros duonos lentos ir prie maitinimo
- 6 žingsnis: kodas
- 7 žingsnis: Diagrama
Video: „Smart-Stat“: 7 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:47
Mūsų produktas leidžia žmonėms patikrinti savo namų šildymo ir oro kondicionavimo sistemų efektyvumą, paprastu ir realiu procesu išmatuodami įeinančio ir išeinančio freono temperatūrą. Šis išmanusis įrenginys paskatins žmones priimti efektyvesnius energijos vartojimo sprendimus naudojant šildymo ir vėsinimo sistemas.
1 žingsnis: reikalingos dalys
- Arduino Uno
- Duonos lenta (4)
- termistorius (2)
- 10K rezistoriai (2)
- Paspauskite mygtuką
- Pjezo garsinis signalas
- LCD ekranas
- potenciometras
- Laidai (25)
- Micro USB arba USB jungtis
2 žingsnis: vielos kepimo lenta temperatūros jutikliui
TMP termistorius yra temperatūros jutiklio tipas, kuris matuoja jutiklio įtampą keičiantis aplinkos temperatūrai. Šis jutiklis turi tris kaiščius - teigiamą, įžemintą ir signalinį. Šis jutiklis yra linijinis jutiklis, o vieno Celsijaus laipsnio temperatūros pokytis prilygsta 10 milivoltų pokyčiui jutiklio išėjime.
Procedūra:
1) Prijunkite temperatūros jutiklį, kaip parodyta aukščiau esančiame paveikslėlyje. Vidurinis laidas bus prijungtas prie A0.
2) Antrą temperatūros jutiklį prijunkite panašiai kaip pirmąjį, o vidurinis laidas bus prijungtas prie A1.
3 žingsnis: Pjezo garsinis signalas
Pjezo garsinis signalas yra prietaisas, naudojamas įspėti vartotoją, kai jo šildymo vėdinimo ir oro kondicionavimo sistema neveikia efektyviai. Garsinis signalas informuoja vartotoją apie jų problemą.
Procedūra:
1) Prijunkite garso signalą prie plokštės, kaip parodyta aukščiau esančiame paveikslėlyje.
4 žingsnis: pridėkite mygtukus
- Mygtukas yra komponentas, jungiantis du grandinės taškus, kai jį paspaudžiate.
- Mūsų gaminyje mygtukas ciklo metu rodo temperatūrą ir efektyvumą iš duomenų, kuriuos renka temperatūros jutikliai.
Procedūra
1) Prijunkite mygtuką, kaip parodyta aukščiau esančiame paveikslėlyje.
5 veiksmas: prijunkite LCD ekraną prie atskiros duonos lentos ir prie maitinimo
Skystųjų kristalų ekranas yra paprastas ekranas, kuris gali pasakyti vartotojui, kai kažkas negerai su jo namų šildymo, vėdinimo ir oro kondicionavimo sistemomis. Pvz. neveikia efektyviai, sistemos gedimas
Pateikta schema padės teisingai prijungti ekraną prie plokštės.
6 žingsnis: kodas
a = arduino ('com3', 'uno', 'bibliotekos', 'ExampleLCD/LCDAddon'); % sukuria arduino objektą, nurodantį „ExampleLCD/LCDAddon“biblioteką.
lcd = addon (a, 'PavyzdysLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'); % sukuria LCD objektą ir nurodo „Arduino“įrenginyje sukonfigūruotus kaiščius.
initializeLCD (LCD, 'Eilutės', 2, 'Stulpeliai', 16); % inicijuoja LCD ekraną
setpref ('Internetas', 'SMTP_Server', 'smtp.gmail.com');
setpref („Internetas“, „El. paštas“, „[email protected]“); % pašto paskyra, iš kurios reikia siųsti
setpref ('Internetas', 'SMTP_Username', 'bwnanney'); % siuntėjų naudotojo vardas
setpref ('Internetas', 'SMTP_Password', 'Morill1204'); % siuntėjų slaptažodis
rekvizitai = java.lang. System.getProperties;
props.setProperty ('mail.smtp.auth', 'true');
props.setProperty ('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory');
props.setProperty ('mail.smtp.socketFactory.port', '465');
b = skaitytiDigitalPin (a, 'D9'); % skaityti skaitmeninį kaištį (skaitmeninį jutiklį)
skaitymas = readVoltage (a, 'A0'); % nuskaito įtampą analoginiame termisteryje, prijungtame prie kaiščio A0
skaitymas2 = skaitymo įtampa (a, 'A2'); % nuskaito įtampą analoginiame termisteryje, prijungtame prie A2 kaiščio
o tiesa % ciklo per esamą teiginį tol, kol tiesa
b = skaitytiDigitalPin (a, 'D9'); % skaityti skaitmeninį kaištį (skaitmeninį jutiklį)
skaitymas = readVoltage (a, 'A0'); % nuskaito įtampą analoginiame termisteryje, prijungtame prie kaiščio A0
jei skaitymas> = 0,6 && skaitymas <0,68 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 64 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,68 && skaitymas <0,69 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 66 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,69 && reading <0,7 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 68 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,7 && skaitymas <0,71 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 70 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,71 && skaitymas <0,72 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 72 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,72 && skaitymas <0,73 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 74 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,73 && skaitymas <0,74 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 76 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,74 && skaitymas <0,75 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 78 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,75 && skaitymas <0,76 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 80 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,76 && skaitymas <0,77 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 82 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,77 && skaitymas <0,8 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 84 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
„playTone“(a, „D10“, 880, 0,25) % atkuria natą (a, smeigtukas, dažnis, trukmė)
pauzė (0,3) % pauzės po pastabos nustatytą laiką
„playTone“(a, „D10“, 880, 0,25) % atkuria natą (a, smeigtukas, dažnis, trukmė)
pauzė (0,3) % pauzių po pastabos nustatytą laiką
„playTone“(a, „D10“, 880, 0,25) % atkuria natą (a, smeigtukas, dažnis, trukmė)
pauzė (0,3) % pauzės po pastabos nustatytą laiką
„playTone“(a, „D10“, 880, 0,25) % atkuria natą (a, smeigtukas, dažnis, trukmė)
pauzė (0,3) % pauzės po pastabos nustatytą laiką
„playTone“(a, „D10“, 987, 0,25) % atkuria natą (a, smeigtukas, dažnis, trukmė)
pauzė (0,3) % pauzių po pastabos nustatytą laiką
„playTone“(a, „D10“, 987, 0,25) % atkuria natą (a, smeigtukas, dažnis, trukmė)
pauzė (0,3) % pauzių po pastabos nustatytą laiką
„playTone“(a, „D10“, 880, 0,12) % atkuria natą (a, smeigtukas, dažnis, trukmė)
pauzė (0,1) % pauzės po pastabos nustatytą laiką
„playTone“(a, „D10“, 740, 0,12) % atkuria natą (a, smeigtukas, dažnis, trukmė)
pauzė (0,1) % pauzės po pastabos nustatytą laiką
„playTone“(a, „D10“, 587, 0,25) % atkuria natą (a, smeigtukas, dažnis, trukmė)
pauzė (0,3)
sendmail ('[email protected]', 'Šildymo ir aušinimo įrenginys, kuriam reikalinga priežiūra !!!',…
„Šildymo ir aušinimo sistema veikia neefektyviai. Kuo greičiau paprašykite techniko aptarnauti įrenginį. ') % Siunčia el. Laišką į nurodytą el. Pašto paskyrą
elseif skaitymas> = 0,8 && skaitymas <0,85 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Temp 86 F'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif skaitymas> = 0,85 && reading <2 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'HOT HOT BABY !!!'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
pabaiga % baigiasi, jei teiginys
o b == 0 % ciklo per esamą teiginį, kol klaidinga
b = skaitytiDigitalPin (a, 'D9'); % skaityti skaitmeninį kaištį (skaitmeninį jutiklį)
skaitymas2 = skaitymo įtampa (a, 'A2'); % nuskaito įtampą analoginiame termisteryje, prijungtame prie A2 kaiščio
jei skaitymas2> = 0,6 && skaitymas2 <0,68 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Efektyvumas 80%'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.68 && reading2 <0.69 % sąlyginai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, „Efektyvumas 90%“); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.69 && reading2 <0.7 % sąlyginai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, „Efektyvumas 95%“); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.7 && reading2 <0.71 % sąlyginai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Efektyvumas 97%'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.71 && reading2 <0.72 % sąlyginai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, „Efektyvumas 100%“); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.72 && reading2 <0.73 % sąlyginai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, „Efektyvumas 95%“); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.73 && reading2 <0.74 % sąlyginai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, „Efektyvumas 90%“); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.74 && reading2 <0.75 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, „Efektyvumas 85%“); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.75 && reading2 <0.76 % sąlyginai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'Efektyvumas 80%'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.76 && reading2 <0.77 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, „Efektyvumas 75%“); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.77 && reading2 <0.8 % sąlyginai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, „Efektyvumas 70%“); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.8 && reading2 <0.85 % sąlyginai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, „Efektyvumas 65%“); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
elseif reading2> = 0.85 && reading2 <2 % sąlygiškai vykdo vieną teiginių rinkinį (bloką).
clearLCD (lcd) % išvalo LCD ekraną
printLCD (LCD, 'ON FIRE !!!'); % Spausdinkite eilutę į LCD.
pauzė (0,5) % pauzių prieš vykdant kitą komandą
end % end if teiginys
end % end while loop
end % end while loop
7 žingsnis: Diagrama
Tai yra pagrindinis vaizdas, kur temperatūros jutikliai būtų dedami ant išleidimo ir garų linijų, kad būtų galima stebėti kiekvienos linijos temperatūrą ir skirtumą tarp jų.
Rekomenduojamas:
„Pasidaryk pats“INTERNETU VALDOMAS SMART LED MATRIX (ADAFRUIT + ESP8266 + WS2812): 8 žingsniai (su nuotraukomis)
„Pasidaryk pats“INTERNETU VALDOMAS SMART LED MATRIX (ADAFRUIT + ESP8266 + WS2812): čia yra mano antrasis žingsnis į projektą, kurį labai džiaugiuosi galėdamas jums parodyti. Tai apie „pasidaryk pats“išmaniąją LED matricą, kuri leis jums rodyti duomenis, tokius kaip „YouTube“statistika, jūsų išmaniųjų namų statistika, kaip temperatūra, drėgmė, gali būti paprastas laikrodis arba tiesiog parodyti
„Smart Lockbox“: 7 žingsniai
„Smart Lockbox“: šioje instrukcijoje aš jums parodysiu, kaip sukurti išmaniąją užrakto dėžę. „Lockbox“maitina „Arduino“(UNO) ir naudoja RFID bei servo variklį, kad valdytų prieigą, stebėdamas gaunamus duomenis iš skirtingų jutiklių. Duomenų istorija bus būti laikomi
„Pasidaryk pats“„SMART LED MATRIX“(ESP8266 + WS2812 / „NeoPixels“): 7 žingsniai (su nuotraukomis)
„Pasidaryk pats SMART LED MATRIX“(ESP8266 + WS2812 / „NeoPixels“): čia yra mano įžanga į projektą, kurį labai džiaugiuosi galėdamas jums parodyti. Tai apie „pasidaryk pats“išmaniąją LED matricą, kuri leis jums rodyti duomenis, pvz., „YouTube“statistiką, jūsų išmaniųjų namų statistiką, nes temperatūra, drėgmė gali būti paprastas laikrodis arba tiesiog
„Raspberry Pi DIY Smart Doorbell“, galintis aptikti žmones, automobilius ir kt.: 5 žingsniai
„Raspberry Pi DIY Smart Doorbell“, galintis aptikti žmones, automobilius ir pan. „Nest“ar vienas iš kitų konkurentų) Aš sukūriau savo išmaniąsias duris
Techninė ir programinė įranga „Hack Smart Devices“, „Tuya“ir „Broadlink“LED lemputė, „Sonoff“, „BSD33 Smart Plug“: 7 žingsniai
Aparatinė ir programinė įranga „Hack Smart Devices“, „Tuya“ir „Broadlink LEDbulb“, „Sonoff“, „BSD33 Smart Plug“: šioje instrukcijoje aš jums parodysiu, kaip aš pažadinau kelis išmaniuosius įrenginius su savo programine įranga, kad galėčiau juos valdyti naudodami MQTT per savo „Openhab“sąranką. naujus įrenginius, kai juos nulaužiau. Žinoma, yra ir kitų programine įranga pagrįstų metodų, skirtų pritaikytam f