Sommario:

Smart-Stat: 7 passaggi
Smart-Stat: 7 passaggi

Video: Smart-Stat: 7 passaggi

Video: Smart-Stat: 7 passaggi
Video: Beautiful knuckleball goals 🤩 2024, Luglio
Anonim
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat

Il nostro prodotto consente alle persone di verificare l'efficienza dei propri sistemi di riscaldamento e condizionamento nelle proprie case misurando la temperatura del freon in entrata e in uscita con un processo semplice e realistico. Questo dispositivo intelligente incoraggerà le persone a prendere decisioni più efficienti dal punto di vista energetico con i loro sistemi di riscaldamento e raffreddamento.

Passaggio 1: parti necessarie

Parti richieste
Parti richieste
Parti richieste
Parti richieste
Parti richieste
Parti richieste

- Arduino Uno

- Tagliere (4)

- Termistore (2)

- Resistenze 10K (2)

- Premi il bottone

- Cicalino piezoelettrico

- Display LCD

- Potenziometro

- Fili (25)

- Connettore Micro USB o USB

Passaggio 2: breadboard a filo per sensore di temperatura

Tagliere a filo per sensore di temperatura
Tagliere a filo per sensore di temperatura

Un termistore TMP è un tipo di sensore di temperatura che misura la tensione attraverso il sensore al variare della temperatura ambiente. Questo particolare sensore ha tre pin: un positivo, una massa e un segnale. Questo sensore è un sensore lineare e la variazione di temperatura di un grado Celsius equivale a una variazione di 10 millivolt all'uscita del sensore.

Procedura:

1) Collegare il sensore di temperatura come mostrato nella figura sopra. Il filo centrale si collegherà ad A0.

2) Collega il tuo secondo sensore di temperatura in modo simile al primo e il filo centrale si collegherà ad A1.

Passaggio 3: cicalino piezoelettrico

Cicalino piezoelettrico
Cicalino piezoelettrico

Un cicalino piezoelettrico è un dispositivo utilizzato per avvisare l'utente quando il sistema di riscaldamento, ventilazione e condizionamento dell'aria non funziona al massimo in modo efficiente. L'allarme acustico informa l'utente che è un problema.

Procedura:

1) Collegare il buzzer alla scheda come mostrato nella figura sopra.

Passaggio 4: aggiungi pulsanti

Aggiungi pulsanti
Aggiungi pulsanti

- Il pulsante è un componente che collega due punti in un circuito quando lo si preme.

- Nel nostro prodotto, il pulsante alterna la visualizzazione della temperatura e dell'efficienza dai dati raccolti dai sensori di temperatura.

Procedura

1) Collegare il pulsante come mostrato nella figura sopra.

Passaggio 5: collegare l'LCD alla breadboard separata e all'alimentazione

Collega l'LCD a una breadboard separata e all'alimentazione
Collega l'LCD a una breadboard separata e all'alimentazione

Il display LCD, a cristalli liquidi, è un semplice schermo in grado di segnalare all'utente quando qualcosa non va nei sistemi di riscaldamento, ventilazione e condizionamento della propria abitazione. Ex. non funziona in modo efficiente, errore di sistema

Lo schema fornito ti aiuterà a collegare correttamente lo schermo alla scheda.

Passaggio 6: codice

a = arduino('com3', 'uno', 'libraries', 'ExampleLCD/LCDAddon'); % crea un oggetto arduino specificando la libreria ExampleLCD/LCDAddon.

lcd = addon(a, 'EsempioLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'}); % crea l'oggetto LCD e specifica i pin configurati sul dispositivo Arduino.

inizializzaLCD(lcd, 'Righe', 2, 'Colonne', 16); % inizializza lo schermo lcd

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

setpref('Internet', 'E_mail', '[email protected]'); % account di posta da cui inviare

setpref('Internet', 'Nome utente_SMTP', 'bwnanney'); % nome utente mittenti

setpref('Internet', 'Password_SMTP', 'Morill1204'); % password mittenti

props = 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'); % leggere un pin digitale (un sensore digitale)

lettura= readVoltage(a, 'A0'); % leggere la tensione sul termistore analogico collegato al pin A0

reading2= readVoltage(a, 'A2'); % leggere la tensione sul termistore analogico collegato al pin A2

mentre true % scorre l'istruzione esistente finché true

b=readDigitalPin(a, 'D9'); % leggere un pin digitale (un sensore digitale)

lettura= readVoltage(a, 'A0'); % leggere la tensione sul termistore analogico collegato al pin A0

se lettura>= 0,6 && lettura< 0,68 % esegue in modo condizionale un singolo insieme di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 64 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif lettura>= 0,68 && lettura<0,69 % esegue in modo condizionale un singolo insieme di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 66 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading>= 0.69 && reading<0.7 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 68 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading>=0.7 && reading<0.71 % esegue condizionalmente un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 70 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading>=0.71 && reading<0.72 % esegue condizionalmente un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 72 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading>=0.72 && reading<0.73 % esegue condizionalmente un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 74 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif lettura>= 0.73 && lettura<0.74 % esegue in modo condizionale un singolo insieme di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 76 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading>= 0.74 && reading<0.75 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 78 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading>= 0.75 && reading<0.76 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 80 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading>= 0.76 && reading<0.77 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 82 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading>= 0.77 && reading<0.8 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 84 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

playTone(a, 'D10', 880, 0.25) % suona una nota (a, pin, frequenza, durata)

pause(0.3) % pause dopo la nota per la durata impostata

playTone(a, 'D10', 880, 0.25) % suona una nota (a, pin, frequenza, durata)

pause(0.3) % pause dopo la nota per la durata impostata

playTone(a, 'D10', 880, 0.25) % suona una nota (a, pin, frequenza, durata)

pause(0.3) % pause dopo la nota per la durata impostata

playTone(a, 'D10', 880, 0.25) % suona una nota (a, pin, frequenza, durata)

pause(0.3) % pause dopo la nota per la durata impostata

playTone(a, 'D10', 987, 0.25) % suona una nota (a, pin, frequenza, durata)

pause(0.3) % pause dopo la nota per la durata impostata

playTone(a, 'D10', 987, 0.25) % suona una nota (a, pin, frequenza, durata)

pause(0.3) % pause dopo la nota per la durata impostata

playTone(a, 'D10', 880, 0.12) % suona una nota (a, pin, frequenza, durata)

pause(0.1) % pause dopo la nota per la durata impostata

playTone(a, 'D10', 740, 0.12) % suona una nota (a, pin, frequenza, durata)

pause(0.1) % pause dopo la nota per la durata impostata

playTone(a, 'D10', 587, 0.25) % suona una nota (a, pin, frequenza, durata)

pausa(0.3)

sendmail('[email protected]', 'Unità di riscaldamento e raffreddamento che necessita di assistenza!!!', …

'Il sistema di riscaldamento e raffreddamento funziona in modo inefficiente. Chiedi a un tecnico di riparare l'unità il prima possibile.') % Invia un'e-mail all'account e-mail specificato

elseif reading>= 0.8 && reading<0.85 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Temp 86 F'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading>= 0.85 && reading<2 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'BAMBINO CALDO CALDO!!!'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

end % termina se istruzione

mentre b==0 % scorre l'istruzione esistente finché false

b=readDigitalPin(a, 'D9'); % leggere un pin digitale (un sensore digitale)

reading2= readVoltage(a, 'A2'); % leggere la tensione sul termistore analogico collegato al pin A2

se lettura2>= 0,6 && lettura2< 0,68 % esegue in modo condizionale un singolo insieme di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 80%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>= 0.68 && reading2<0.69 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 90%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>= 0.69 && reading2<0.7 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 95%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>=0.7 && reading2<0.71 % esegue condizionalmente un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 97%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>=0.71 && reading2<0.72 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 100%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>=0.72 && reading2<0.73 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 95%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>= 0.73 && reading2<0.74 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 90%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>= 0.74 && reading2<0.75 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 85%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>= 0.75 && reading2<0.76 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 80%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>= 0.76 && reading2<0.77 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 75%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>= 0.77 && reading2<0.8 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 70%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>= 0.8 && reading2<0.85 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'Efficienza 65%'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

elseif reading2>= 0.85 && reading2<2 % esegue in modo condizionale un singolo set di istruzioni (un blocco).

clearLCD(lcd) % cancella lo schermo lcd

printLCD(lcd, 'A FUOCO!!!'); % Stampa una stringa sul display LCD.

pause(0.5) % fa una pausa prima di eseguire il comando successivo

end % end if istruzione

end % end while loop

end % end while loop

Passaggio 7: diagramma

Diagramma
Diagramma

Questa è una rappresentazione di base di dove verrebbero posizionati i sensori di temperatura sulle linee di scarico e di vapore per monitorare la temperatura di ciascuna linea e il differenziale tra di esse.

Consigliato: