Talaan ng mga Nilalaman:
- Hakbang 1: Kinakailangan ang Mga Bahagi
- Hakbang 2: Wire Breadboard para sa Temperature Sensor
- Hakbang 3: Piezo Buzzer
- Hakbang 4: Magdagdag ng Mga Pindutan
- Hakbang 5: Ikonekta ang LCD sa Paghiwalayin ang Breadboard at sa Lakas
- Hakbang 6: Code
- Hakbang 7: Diagram
Video: Smart-Stat: 7 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Pinapayagan ng aming produkto ang mga indibidwal na suriin ang kahusayan ng kanilang mga sistema ng pag-init at aircon sa kanilang mga tahanan sa pamamagitan ng pagsukat ng temperatura ng papasok at papalabas na freon ng isang simple at makatotohanang proseso. Ang matalinong aparato ay hikayatin ang mga tao na gumawa ng mas maraming mga desisyon na mahusay sa enerhiya sa kanilang mga sistema ng pag-init at paglamig.
Hakbang 1: Kinakailangan ang Mga Bahagi
- Arduino Uno
- Breadboard (4)
- Thermistor (2)
- 10K Resistors (2)
- Push Button
- Piezo Buzzer
- LCD Display
- Potensyomiter
- Mga Wires (25)
- Micro USB o USB Connector
Hakbang 2: Wire Breadboard para sa Temperature Sensor
Ang isang thermistor ng TMP ay isang uri ng sensor ng temperatura na sumusukat sa boltahe sa kabuuan ng sensor habang nagbabago ang temperatura sa paligid. Ang partikular na sensor ay may tatlong mga pin - isang positibo, lupa, at isang senyas. Ang sensor na ito ay isang linear sensor, at ang pagbabago sa temperatura ng isang degree Celcius ay katumbas ng pagbabago ng 10 millivolts sa output ng sensor.
Pamamaraan:
1) Ikonekta ang iyong sensor ng temperatura tulad ng ipinakita sa pigura sa itaas. Ang gitnang kawad ay makakonekta sa A0.
2) Ikonekta ang iyong pangalawang sensor ng temperatura sa katulad na paraan sa una, at ang gitnang kawad ay makakonekta sa A1.
Hakbang 3: Piezo Buzzer
Ang isang Piezo buzzer ay isang aparato na ginamit upang alerto ang gumagamit kung ang kanilang pagpainit na bentilasyon at aircon system ay hindi gumagana nang mahusay sa rurok. Ipinaalam ng naririnig na alarma sa gumagamit ang kanilang isyu.
Pamamaraan:
1) Ikonekta ang buzzer sa board tulad ng ipinakita sa figure sa itaas.
Hakbang 4: Magdagdag ng Mga Pindutan
- Ang pushbutton ay isang bahagi na nag-uugnay sa dalawang puntos sa isang circuit kapag pinindot mo ito.
- Sa aming produkto, ang cycle ng pindutan sa pagitan ng pagpapakita ng temperatura at kahusayan mula sa data na kinokolekta ng mga sensor ng temperatura.
Pamamaraan
1) Ikonekta ang pindutan tulad ng ipinakita nito sa figure sa itaas.
Hakbang 5: Ikonekta ang LCD sa Paghiwalayin ang Breadboard at sa Lakas
Ang LCD, likidong kristal na display, ay isang simpleng screen na maaaring sabihin sa gumagamit kung may mali sa pagpainit, bentilasyon at mga aircon system ng kanilang tahanan. Hal. hindi tumatakbo nang mahusay, pagkabigo ng system
Ang diagram na ibinigay ay makakatulong sa iyo na ikonekta nang wasto ang screen sa board.
Hakbang 6: Code
a = arduino ('com3', 'uno', 'library', 'HalimbawaLCD / LCDAddon'); Lumilikha si% ng isang bagay na arduino na tumutukoy sa halimbawa ng LibraryLCD / LCDAddon.
lcd = addon (a, 'HalimbawaLCD / LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'}); Lumilikha ang% ng bagay na LCD, at tinutukoy ang mga pin na naka-configure sa Arduino aparato.
initializeLCD (lcd, 'Rows', 2, 'Columns', 16); Pinasimulan ni% ang lcd screen
setpref ('Internet', 'SMTP_Server', 'smtp.gmail.com');
setpref ('Internet', 'E_mail', '[email protected]'); % mail account upang ipadala mula sa
setpref ('Internet', 'SMTP_Username', 'bwnanney'); % username ng mga nagpadala
setpref ('Internet', 'SMTP_Password', 'Morill1204'); % password ng mga nagpadala
props = java.lang. System.getProperties;
props.setProperty ('mail.smtp.auth', 'totoo');
props.setProperty ('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory');
props.setProperty ('mail.smtp.socketFactory.port', '465');
b = readDigitalPin (a, 'D9'); % basahin ang isang digital pin (isang digital sensor)
pagbabasa = readVoltage (a, 'A0'); % basahin ang boltahe sa analog thermister na konektado sa pin A0
pagbabasa2 = readVoltage (a, 'A2'); % basahin ang boltahe sa analog thermister na konektado sa pin A2
habang ang totoong% loops sa pamamagitan ng mayroon nang pahayag hangga't totoo
b = readDigitalPin (a, 'D9'); % basahin ang isang digital pin (isang digital sensor)
pagbabasa = readVoltage (a, 'A0'); % basahin ang boltahe sa analog thermister na konektado sa pin A0
kung ang pagbabasa> = 0.6 && pagbabasa <0.68% na may kundisyon ay nagpapatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 64 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.68 && pagbabasa <0.69% na may kundisyon na nagpapatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 66 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.69 && pagbabasa <0.7% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 68 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.7 && pagbabasa <0.71% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 70 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.71 && pagbabasa <0.72% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 72 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.72 && pagbabasa <0.73% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 74 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.73 && pagbabasa <0.74% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 76 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.74 && pagbabasa <0.75% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 78 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.75 && pagbabasa <0.76% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 80 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.76 && pagbabasa <0.77% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 82 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.77 && pagbabasa <0.8% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 84 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
playTone (a, 'D10', 880, 0.25)% gumaganap ng isang tala (a, pin, dalas, tagal)
i-pause (0.3)% naka-pause pagkatapos ng tala para sa itinakdang tagal
playTone (a, 'D10', 880, 0.25)% gumaganap ng isang tala (a, pin, dalas, tagal)
i-pause (0.3)% naka-pause pagkatapos ng tala para sa itinakdang tagal
playTone (a, 'D10', 880, 0.25)% gumaganap ng isang tala (a, pin, dalas, tagal)
i-pause (0.3)% naka-pause pagkatapos ng tala para sa itinakdang tagal
playTone (a, 'D10', 880, 0.25)% gumaganap ng isang tala (a, pin, dalas, tagal)
i-pause (0.3)% naka-pause pagkatapos ng tala para sa itinakdang tagal
playTone (a, 'D10', 987, 0.25)% gumaganap ng isang tala (a, pin, dalas, tagal)
i-pause (0.3)% naka-pause pagkatapos ng tala para sa itinakdang tagal
playTone (a, 'D10', 987, 0.25)% gumaganap ng isang tala (a, pin, dalas, tagal)
i-pause (0.3)% naka-pause pagkatapos ng tala para sa itinakdang tagal
playTone (a, 'D10', 880, 0.12)% ay gumaganap ng isang tala (a, pin, dalas, tagal)
pause (0.1)% naka-pause pagkatapos tandaan para sa itinakdang tagal
playTone (a, 'D10', 740, 0.12)% ay gumaganap ng isang tala (a, pin, dalas, tagal)
pause (0.1)% naka-pause pagkatapos tandaan para sa itinakdang tagal
playTone (a, 'D10', 587, 0.25)% gumaganap ng isang tala (a, pin, dalas, tagal)
pause (0.3)
sendmail ('[email protected] ',' Heating at Cooling Unit na Kailangan ng Serbisyo !!! ',…
'Ang sistema ng pag-init at paglamig ay gumagana nang hindi mabisa. Mangyaring magkaroon ng serbisyong tekniko sa yunit sa lalong madaling panahon. ')% Nagpadala ng isang email sa tinukoy na email account
kung hindi man basahin> = 0.8 && pagbabasa <0.85% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Temp 86 F'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man basahin> = 0.85 && pagbabasa <2% na may kundisyon na nagpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'HOT HOT BABY !!!'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
magtatapos ang% end kung pahayag
habang b == 0% na mga loop sa pamamagitan ng mayroon nang pahayag hangga't hindi totoo
b = readDigitalPin (a, 'D9'); % basahin ang isang digital pin (isang digital sensor)
pagbabasa2 = readVoltage (a, 'A2'); % basahin ang boltahe sa analog thermister na konektado sa pin A2
kung ang pagbasa2> = 0.6 && pagbabasa2 <0.68% na may kondisyon na nagpapatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 80%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.68 && pagbabasa2 <0.69% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 90%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.69 && pagbabasa2 <0.7% na may kondisyon na nagpapatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 95%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.7 && pagbabasa2 <0.71% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 97%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.71 && pagbabasa2 <0.72% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 100%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.72 && pagbabasa2 <0.73% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 95%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.73 && pagbabasa2 <0.74% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 90%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.74 && pagbabasa2 <0.75% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 85%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.75 && pagbabasa2 <0.76% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 80%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.76 && pagbabasa2 <0.77% na may kondisyon na magpatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 75%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.77 && pagbabasa2 <0.8% na may kondisyon na nagpapatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 70%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.8 && pagbabasa2 <0.85% na may kondisyon na nagpapatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'Kahusayan 65%'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
kung hindi man pagbabasa2> = 0.85 && pagbabasa2 <2% na may kundisyon na nagpapatupad ng isang solong hanay ng mga pahayag (isang bloke).
clearLCD (lcd)% nililimas ang lcd screen
printLCD (lcd, 'ON FIRE !!!'); % Mag-print ng isang string sa LCD.
pause (0.5)% pause bago isagawa ang susunod na utos
pagtatapos% pagtatapos kung pahayag
tapusin ang% pagtatapos habang loop
tapusin ang% pagtatapos habang loop
Hakbang 7: Diagram
Ito ay isang pangunahing representasyon kung saan ilalagay ang mga sensor ng temperatura sa mga linya ng paglabas at singaw upang subaybayan ang temperatura ng bawat linya at ang pagkakaiba sa pagitan nila.
Inirerekumendang:
Mga Soldering Surface Mount Component - Mga Pangunahing Kaalaman sa Paghinang: 9 Mga Hakbang (na may Mga Larawan)
Mga Soldering Surface Mount Component | Mga Pangunahing Kaalaman sa Paghinang: Sa ngayon sa aking Serye ng Mga Pangunahing Kaalaman sa Soldering, tinalakay ko ang sapat na mga pangunahing kaalaman tungkol sa paghihinang para masimulan mong magsanay. Sa Ituturo na ito kung ano ang tatalakayin ko ay medyo mas advanced, ngunit ito ay ilan sa mga pangunahing kaalaman para sa paghihinang sa Surface Mount Compo
Mga Laruang Switch-Adapt: Mga Paglalakad sa Tubig na Lumalakad sa Tubig na Naa-access !: 7 Mga Hakbang (na may Mga Larawan)
Mga Laruang Switch-Adapt: Mga Paglalakad sa Tubig na Lumalakad sa Dragon na Naa-access !: Ang pagbagay ng laruan ay nagbubukas ng mga bagong paraan at na-customize na solusyon upang payagan ang mga bata na may limitadong mga kakayahan sa motor o mga kapansanan sa pag-unlad na makipag-ugnay sa mga laruan nang nakapag-iisa. Sa maraming mga kaso, ang mga bata na nangangailangan ng inangkop na mga laruan ay hindi maaring
Paano mag-DIY Smart Roller Blinds Sa Mga SONOFF Smart Switch?: 14 Mga Hakbang
Paano mag-DIY Smart Roller Blinds Sa Mga Smart switch ng SONOFF?: Gumamit ng Interlock Mode sa mga smart switch ng SONOFF upang gawing matalino ang iyong ordinaryong roller blinds / blinds at hilahin ito sa gabi? Gayunpaman, ako ay
Pagpapanatiling Cool ng Iyong Baby Ngayong Tag-araw - Pagkontrol sa Mga Bobo na Tagahanga Sa Mga Smart bagay!: 6 na Hakbang (na may Mga Larawan)
Pagpapanatiling Cool ng Iyong Sanggol Ngayong Tag-init - Pagkontrol sa Mga Bobo na Tagahanga Sa Mga Matalinong Bagay !: Tulad ng dalawang linggo na ang nakalilipas sa pagsulat nito, ako ay naging isang ama sa isang hindi kapani-paniwalang sanggol na lalaki! Sa pagbabago ng panahon, ang mga araw na nagiging mas mahaba at ang mga temperatura ay nagiging mas mainit, naisip kong makabubuting magkaroon ng ilang uri ng monitor tungkol sa
10 Mga kahalili sa DIY sa Mga Off-The-Shelf na Elektroniko na Mga Bahagi: 11 Mga Hakbang (na may Mga Larawan)
10 Mga Kahalili sa DIY sa Mga Off-The-Shelf na Mga Elektroniko na Bahagi: Maligayang pagdating sa aking kauna-unahang itinuro! Sa palagay mo ba ang ilang mga bahagi mula sa mga tagatingi sa online ay masyadong mahal o may mababang kalidad? Kailangan bang makakuha ng isang prototype nang mabilis at tumatakbo nang mabilis at hindi makapaghintay linggo para sa pagpapadala? Walang mga lokal na electronics distributor? Ang fol