INHOUDSOPGAWE:

Smart-Stat: 7 stappe
Smart-Stat: 7 stappe

Video: Smart-Stat: 7 stappe

Video: Smart-Stat: 7 stappe
Video: Лошадь начала топтать гроб во время похорон! Когда тот треснул люди услышали плач! 2024, Julie
Anonim
Slim-Stat
Slim-Stat
Slim-Stat
Slim-Stat
Slim-Stat
Slim-Stat
Slim-Stat
Slim-Stat

Met ons produk kan individue die doeltreffendheid van hul verwarmings- en lugversorgingstelsels in hul huise nagaan deur die temperatuur van die inkomende en uitgaande freon te meet deur 'n eenvoudige en realistiese proses. Hierdie slim toestel sal mense aanmoedig om meer energie -effektiewe besluite te neem met hul verwarmings- en verkoelingstelsels.

Stap 1: Onderdele benodig

Onderdele benodig
Onderdele benodig
Onderdele benodig
Onderdele benodig
Onderdele benodig
Onderdele benodig

- Arduino Uno

- Broodbord (4)

- Termistor (2)

- 10K weerstande (2)

- Druk knoppie

- Piezo -gonser

- LCD -skerm

- Potensiometer

- Drade (25)

- Mikro -USB of USB -aansluiting

Stap 2: Draadbroodbord vir temperatuursensor

Draadbroodbord vir temperatuursensor
Draadbroodbord vir temperatuursensor

'N TMP -termistor is 'n tipe temperatuursensor wat die spanning oor die sensor meet as die omgewingstemperatuur verander. Hierdie spesifieke sensor het drie penne - 'n positiewe, grond en 'n sein. Hierdie sensor is 'n lineêre sensor, en temperatuurverandering van een graad Celcius is gelykstaande aan 'n verandering van 10 millivolt by die sensoruitset.

Prosedure:

1) Koppel u temperatuursensor soos in die bostaande figuur getoon. Die middelste draad sal met A0 verbind word.

2) Koppel u tweede temperatuursensor op dieselfde manier as die eerste, en die middelste draad sal met A1 verbind word.

Stap 3: Piezo -gonser

Piezo -gonser
Piezo -gonser

'N Piezo -zoemer is 'n toestel wat die gebruiker waarsku wanneer hul verwarmingsventilasie en lugversorgingstelsel nie effektief werk nie. Die hoorbare alarm laat die gebruiker weet dat dit 'n probleem is.

Prosedure:

1) Koppel die zoemer aan die bord soos in die figuur hierbo getoon.

Stap 4: Voeg knoppies by

Voeg knoppies by
Voeg knoppies by

- Die drukknop is 'n komponent wat twee punte in 'n stroombaan verbind as u daarop druk.

- In ons produk wissel die knoppie tussen die vertoon van die temperatuur en die doeltreffendheid van die data wat die temperatuursensors versamel.

Prosedure

1) Koppel die knoppie soos aangedui in die figuur hierbo.

Stap 5: Koppel die LCD aan die aparte broodbord en die krag

Koppel die LCD aan die aparte broodbord en die krag
Koppel die LCD aan die aparte broodbord en die krag

Die LCD, vloeibare kristalvertoning, is 'n eenvoudige skerm wat die gebruiker kan vertel wanneer daar iets fout is met die verwarming, ventilasie en lugversorgingstelsels in hul huis. Bv. werk nie doeltreffend nie, stelselfout

Die diagram sal u help om die skerm korrek aan die bord te koppel.

Stap 6: Kode

a = arduino ('com3', 'uno', 'biblioteke', 'VoorbeeldLCD/LCDAddon'); % skep 'n arduino -voorwerp wat die voorbeeldLCD/LCDAddon -biblioteek spesifiseer.

lcd = addon (a, 'VoorbeeldLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'}); % skep die LCD -voorwerp en spesifiseer die penne wat op die Arduino -toestel gekonfigureer is.

initializeLCD (lcd, 'Rows', 2, 'Columns', 16); % begin die lcd -skerm

setpref ('Internet', 'SMTP_Server', 'smtp.gmail.com');

setpref ('Internet', 'E_mail', '[email protected]'); % posrekening om van te stuur

setpref ('Internet', 'SMTP_Username', 'bwnanney'); % sender gebruikersnaam

setpref ('Internet', 'SMTP_Password', 'Morill1204'); % sender wagwoord

rekwisiete = 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 = readDigitalPin (a, 'D9'); % lees 'n digitale pen ('n digitale sensor)

lees = leesVoltage (a, 'A0'); % lees die spanning op analoog termister gekoppel aan pen A0

reading2 = readVoltage (a, 'A2'); % lees die spanning op analoog termister gekoppel aan pen A2

terwyl ware % deur die bestaande stelling loop, solank dit waar is

b = readDigitalPin (a, 'D9'); % lees 'n digitale pen ('n digitale sensor)

lees = leesVoltage (a, 'A0'); % lees die spanning op analoog termister gekoppel aan pen A0

as lees> = 0.6 && lees <0.68 % voorwaardelik 'n enkele stel stellings ('n blok) uitvoer.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 64 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0.68 && lees <0.69 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 66 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0.69 && lees <0.7 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 68 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0.7 && lees <0.71 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 70 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0.71 && lees <0.72 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 72 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0.72 && lees <0.73 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 74 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0.73 && lees <0.74 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 76 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0,74 && lees <0,75 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 78 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0.75 && lees <0.76 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 80 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0,76 && lees <0,77 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 82 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0,77 && lees <0,8 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 84 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

playTone (a, 'D10', 880, 0.25) % speel 'n noot (a, pen, frekwensie, duur)

pouse (0.3) % onderbreek na aantekening vir 'n vasgestelde duur

playTone (a, 'D10', 880, 0.25) % speel 'n noot (a, pen, frekwensie, duur)

pouse (0.3) % onderbreek na aantekening vir 'n vasgestelde duur

playTone (a, 'D10', 880, 0.25) % speel 'n noot (a, pen, frekwensie, duur)

pouse (0.3) % onderbreek na aantekening vir 'n vasgestelde duur

playTone (a, 'D10', 880, 0.25) % speel 'n noot (a, pen, frekwensie, duur)

pouse (0.3) % onderbreek na aantekening vir 'n vasgestelde duur

playTone (a, 'D10', 987, 0.25) % speel 'n noot (a, pen, frekwensie, duur)

pouse (0.3) % onderbreek na aantekening vir 'n vasgestelde duur

playTone (a, 'D10', 987, 0.25) % speel 'n noot (a, pen, frekwensie, duur)

pouse (0.3) % onderbreek na aantekening vir 'n vasgestelde duur

playTone (a, 'D10', 880, 0.12) % speel 'n noot (a, pen, frekwensie, duur)

pouse (0.1) % onderbreek na aantekening vir 'n vasgestelde duur

playTone (a, 'D10', 740, 0.12) % speel 'n noot (a, pen, frekwensie, duur)

pouse (0.1) % onderbreek na aantekening vir 'n vasgestelde duur

playTone (a, 'D10', 587, 0.25) % speel 'n noot (a, pen, frekwensie, duur)

pouse (0.3)

sendmail ('[email protected]', 'Verwarmings- en verkoelingseenheid wat diens benodig !!!', …

'Die verwarmings- en verkoelingstelsel werk ondoeltreffend. Laat 'n tegnikus die eenheid so gou moontlik diens. ') % Stuur 'n e -pos na die gespesifiseerde e -posrekening

elseif lees> = 0.8 && lees <0.85 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Temp 86 F'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif lees> = 0,85 && lees <2 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'HOT HOT BABY !!!'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

eind % eindig as verklaring

terwyl b == 0 % deur die bestaande stelling loop, solank dit onwaar is

b = readDigitalPin (a, 'D9'); % lees 'n digitale pen ('n digitale sensor)

reading2 = readVoltage (a, 'A2'); % lees die spanning op analoog termister gekoppel aan pen A2

as reading2> = 0.6 && reading2 <0.68 % voorwaardelik 'n enkele stel stellings ('n blok) uitvoer.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 80%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.68 && reading2 <0.69 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 90%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.69 && reading2 <0.7 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 95%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.7 && reading2 <0.71 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 97%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.71 && reading2 <0.72 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 100%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.72 && reading2 <0.73 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 95%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.73 && reading2 <0.74 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 90%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.74 && reading2 <0.75 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 85%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.75 && reading2 <0.76 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 80%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.76 && reading2 <0.77 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 75%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.77 && reading2 <0.8 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 70%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.8 && reading2 <0.85 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'Doeltreffendheid 65%'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

elseif reading2> = 0.85 && reading2 <2 % voer voorwaardelik 'n enkele stel stellings ('n blok) uit.

clearLCD (lcd) % maak die lcd -skerm skoon

printLCD (lcd, 'OP BRAND !!!'); Druk 'n string op die LCD.

pouse (0.5) % onderbreek voordat die volgende opdrag uitgevoer word

eind % end as verklaring

eind % end terwyl lus

eind % eindig terwyl lus

Stap 7: Diagram

Diagram
Diagram

Dit is 'n basiese voorstelling van waar die temperatuursensors op die afvoer- en damplyne geplaas sou word om die temperatuur van elke lyn en die verskil tussen hulle te monitor.

Aanbeveel: