Sommario:

Sistema di allarme antincendio LCD Arduino: 9 passaggi
Sistema di allarme antincendio LCD Arduino: 9 passaggi

Video: Sistema di allarme antincendio LCD Arduino: 9 passaggi

Video: Sistema di allarme antincendio LCD Arduino: 9 passaggi
Video: Arduino ep.43 - allarme semplice con led e buzzer 2024, Novembre
Anonim
Sistema di allarme antincendio LCD Arduino
Sistema di allarme antincendio LCD Arduino
Sistema di allarme antincendio LCD Arduino
Sistema di allarme antincendio LCD Arduino
Sistema di allarme antincendio LCD Arduino
Sistema di allarme antincendio LCD Arduino

Questo è un progetto realizzato da studenti che combina le funzioni di uno schermo LCD, un cicalino, un sensore di temperatura RGB e DHT.

La temperatura ambiente attuale viene visualizzata e aggiornata sullo schermo LCD.

Il messaggio stampato sullo schermo LCD informa l'utente del livello di "pericolo di incendio".

Lo schermo si oscura e lampeggia per avvisare l'utente del pericolo.

Il cicalino diventa più forte e più veloce per avvisare l'utente del pericolo a seconda del livello di rischio attuale.

L'RGB cambia in verde, giallo, arancione e rosso a seconda del livello di rischio attuale.

Può essere inserito in una custodia stampata in 3D per un aspetto più professionale.

Questo risolve un problema del mondo reale delle persone che non sanno quando c'è il rischio di un incendio finché non è troppo tardi

Passaggio 1: raccogliere materiali

Raccogli materiali
Raccogli materiali
Raccogli materiali
Raccogli materiali
Raccogli materiali
Raccogli materiali

Materiali utilizzati in questo progetto:

1x display LCD

1x sensore di temperatura DHT_11

1x RGB

1x cicalino piezo passivo 1.0v

2x taglieri piccoli

3x resistori standard

1x tagliere di dimensioni normali

1x Arduino UNO

Bluetack per bloccare i cavi in posizione.

Un assortimento di fili con estremità diverse, sia a estremità aperta che a estremità singola.

Un dispositivo per eseguire il codice

Accesso a una stampante 3D se desideri il guscio esterno e un aspetto più lucido

Passaggio 2: impostazione delle breadboard

Preparare le breadboard
Preparare le breadboard
Preparare le breadboard
Preparare le breadboard

1. Collega il filo arancione dal pin etichettato "GND" sulla scheda Arduino e collegalo al lato negativo (blu) della breadboard. Da questo punto in poi, se avremo bisogno di utilizzare GND per eventuali dispositivi esterni, li metteremo semplicemente nella stessa colonna di questa sulla breadboard.

2. Collegare il filo rosso dal pin etichettato "5V" sulla scheda Arduino e collegarlo al lato positivo (rosso) della breadboard. Da questo punto in poi, se avremo bisogno di utilizzare 5V per eventuali dispositivi esterni, li metteremo semplicemente nella stessa colonna di questa sulla breadboard.

Passaggio 3: impostazione del display LCD

Impostazione del display LCD
Impostazione del display LCD
Impostazione del display LCD
Impostazione del display LCD
Impostazione del display LCD
Impostazione del display LCD

1. Capovolgi la scheda in modo che sia capovolta con tutti i perni sul lato sinistro.

2. Collegare un filo 5 in alto a sinistra sulla fila superiore di pin e collegarlo al pin numero 4 su Arduino UNO.

3. Collegare un filo 6 in alto a sinistra sulla fila superiore di pin e collegarlo al pin numero 5 su Arduino UNO.

4. Collegare un filo 7 in alto a sinistra sulla fila superiore di pin e collegarlo al pin numero 6 su Arduino UNO.

5. Collegare un filo 8 in alto a sinistra sulla fila superiore di pin e collegarlo al pin numero 7 su Arduino UNO.

6. Collegare un filo 9 in alto a sinistra sulla fila superiore di pin e collegarlo al pin numero 8 su Arduino UNO.

7. Collegare un filo 10 in alto a sinistra sulla fila superiore di pin e collegarlo al pin numero 9 su Arduino UNO.

8. Collegare un filo 3 in basso a destra e collegarlo alla riga 5V sulla breadboard

9. Collega un filo 4 in basso a destra e collegalo alla riga GND sulla breadboard

GUARDA LE IMMAGINI COME LO SCHEMA DEL CIRCUITO MOSTRA DIVERSI LCD

Passaggio 4: impostazione del cicalino piezoelettrico

Configurazione del cicalino piezoelettrico
Configurazione del cicalino piezoelettrico
Impostazione del cicalino piezoelettrico
Impostazione del cicalino piezoelettrico
Impostazione del cicalino piezoelettrico
Impostazione del cicalino piezoelettrico
Impostazione del cicalino piezoelettrico
Impostazione del cicalino piezoelettrico

1. Collegare un filo dal pin GND sul cicalino alla colonna GND (blu) sulla breadboard

2. Collegare un filo dal pin VCC sul cicalino alla colonna 5V (rossa) sulla breadboard

3. Collegare un filo dal pin SIG sul cicalino al pin numerato "10" sulla scheda arduino UNO

VEDERE LE IMMAGINI SOPRA COME LO SCHEMA DEL CIRCUITO MOSTRA DIVERSI BUZZER

Passaggio 5: impostazione del sensore di temperatura DHT

Impostazione del sensore di temperatura DHT
Impostazione del sensore di temperatura DHT
Impostazione del sensore di temperatura DHT
Impostazione del sensore di temperatura DHT
Impostazione del sensore di temperatura DHT
Impostazione del sensore di temperatura DHT
Impostazione del sensore di temperatura DHT
Impostazione del sensore di temperatura DHT

1. Imposta il sensore DHT nella breadboard come mostrato sopra

2. Collegare il primo pin a sinistra del sensore DHT (etichettato VCC nello schema della parte) alla colonna 5V (rossa) sulla breadboard

3. Collegare il secondo pin a sinistra del sensore DHT (etichettato DATA nello schema della parte) alla porta A0 sull'Arduino UNO

4. Collegare il primo pin a destra del sensore DHT (etichettato GND nello schema della parte) alla colonna GND (blu) sulla breadboard

5. Guarda un tutorial e aggiungi ad Arduino la libreria dht.h che si trova alla fine dell'istruzione. (Questo è obbligatorio)

Passaggio 6: configurazione dell'RGB

Configurazione dell'RGB
Configurazione dell'RGB
Configurazione dell'RGB
Configurazione dell'RGB
Configurazione dell'RGB
Configurazione dell'RGB
Configurazione dell'RGB
Configurazione dell'RGB

1. Posiziona l'RGB in una piccola breadboard come mostrato sopra, l'enfasi sulla seconda gamba da sinistra dell'RGB è uno slot più vicino degli altri tre

2. Posizionare i resistori standard sul primo, terzo e quarto pin. Lasciando spazio per almeno un altro filo (come mostrato sopra).

3. Collegare un filo da dietro il resistore sul pin sinistro dell'RGB al pin Etichettato 2 sull'Arduino UNO

4. Collegare un filo da dietro il secondo periferico dal pin sinistro dell'RGB alla colonna GND (blu) della breadboard.

5. Collegare un filo da dietro il resistore sul secondo dal pin destro dell'RGB al pin Etichettato 1 sull'Arduino UNO

6. Collegare un filo da dietro il resistore sul pin destro dell'RGB al pin Etichettato 3 sull'Arduino UNO

Passaggio 7: custodia per stampa 3D opzionale

Custodia per stampa 3D opzionale
Custodia per stampa 3D opzionale
Custodia per stampa 3D opzionale
Custodia per stampa 3D opzionale
Custodia per stampa 3D opzionale
Custodia per stampa 3D opzionale

1. Trova un tutorial su come stampare in 3D.

2. Stampa il disegno allegato di seguito realizzato su Autodesk Fusion 360 (file.stl)

3. Raschiare il materiale 3D in eccesso e lisciare la superficie

4. Vedi l'immagine sopra per una guida su dove posizionare le parti Arduino.

Passaggio 8: il codice e i file

Il codice e i file
Il codice e i file

-La libreria DHT.h è allegata. (DECOMPRIMA)

-Il Codice con commenti dettagliati completi è allegato ma è anche nella fase successiva.

-Il file.stl per l'alloggiamento 3D è allegato

-Lo schema elettrico è di nuovo allegato. Assicurati di fare riferimento ai passaggi effettivi per lo schermo LCD e il cicalino piezoelettrico poiché sono stati utilizzati componenti diversi.

Passaggio 9: codice Arduino

Codice Arduino
Codice Arduino
Codice Arduino
Codice Arduino

//SISTEMA DI ALLARME INCENDIO LCD//Legge l'input dal pin della temperatura DHT e, a seconda che sia caldo o meno, cambia un rgb e un altoparlante per indicare all'utente se c'è pericolo di incendio. // Visualizza anche la temperatura sullo schermo LCD.

// IMPOSTAZIONE DHT

#include // Include la libreria DHT

#define dht_dpin A0 // Dice alla scheda che il pin DHT è nell'ingresso analogico 0

dht DHT; // dht = DHT

// IMPOSTAZIONE CRISTALLI LIQUIDI

#include // Include la libreria Liquid Crystal

LCD a cristalli liquidi (8, 9, 4, 5, 6, 7); // Abbrevia a LCD / indica ad arduino quali porte occupa l'LCD

// DEFINIZIONE RGB + BUZZER

#define redpin 1 // Definisce il redpin di RGB nella porta 1

#define greenpin 2 // Definisce greenpin di RGB nella porta 2

#define bluepin 3 // Definisce bluepin di RGB nella porta 3

#define buzzerpin 10 // Definisce il buzzerpin nella porta 10

// VARIABILE/S

int temp = analogRead(DHT.temperature); // Stabilisce l'intero "temp" che è il valore del comando DHT.temperature

void setup() {

//USCITA/INGRESSO

analogWrite(redpin, OUTPUT); // Dichiara/definisci redpin come Output

analogWrite(pin verde, OUTPUT); // Dichiara/definisce greenpin come Output

analogWrite(bluepin, OUTPUT); // Dichiara/definisce bluepin come Output

pinMode(cicalino, OUTPUT); // Dichiara/definisci il buzzerpin come Output

// SCHERMO A CRISTALLI LIQUIDI

lcd.inizio (16, 2); // Definisci lo schermo LCD come 16 colonne e 2 righe }

ciclo vuoto() {

// CODICE LCD SENZA VARIABILITÀ

DHT.read11(dht_dpin); // Legge anche l'input da dht_dpin (A0)

lcd.setCursor(0, 0); //Imposta il cursore su Colonna 0, Riga 0

lcd.print("E"); //Scrive "It's" sullo schermo LCD

lcd.print(DHT.temperatura); // Stampa il valore DHT.temperature dal pin DHT sulla colonna 0, riga 0

lcd.print(" "); // Stampa uno spazio dopo la temperatura

lcd.print((carattere)223); // stampa il segno di grado dopo la temperatura

lcd.print("C"); // Stampa una "c" dopo il segno dei gradi per simboleggiare centigradi

// LCD LAMPEGGIANTE

lcd.setCursor(0, 1); // Imposta il cursore sulla colonna 0, riga 1

lcd.noDisplay();

lcd.print("Nessun pericolo di incendio"); // Stampa "Nessuna possibilità di fuoco"

lcd.noDisplay(); // Spegne il display LCD (parte del flash)

delay(1000); // Rimane spento per 1 secondo

display LCD(); // Riaccende il display LCD

delay(1000); // Rimane acceso per 1 secondo

// CODICE RGB + BUZZER

analogWrite(redpin, 0); // Nessun output dal pin rosso

analogWrite(pin verde, 255); // 255 output da greenpin (rende RGB verde)

analogWrite(bluepin, 0); // Nessun output dal pin blu

tono(cicalino, 20, 20); // // Emette una frequenza di 20 hertz per 0,02 secondi dal cicalino

// SE LA TEMPERATURA È 25-30

if ((int(DHT.temperature) >= 25,00) && (int(DHT.temperature) <= 30,00)) {

lcd.clear(); //Cancella lo schermo LCD

lcd.setCursor(0, 1); //Imposta il cursore sulla colonna 0, riga 1

lcd.print("Piccolo avviso"); // Stampa "Piccolo avviso" sulla colonna 0, riga 1

lcd.noDisplay(); // Spegne il display LCD (parte del flash)

delay(1000); // Rimane spento per 1 secondo

display LCD(); // Riaccende il display LCD

delay(1000); // Rimane acceso per 1 secondo

analogWrite(redpin, 255); // 255 output da redpin (rende RGB giallo)

analogWrite(pin verde, 255); // 255 output da greenpin (rende RGB giallo)

analogWrite(bluepin, 0); // Nessun output dal pin blu

tono (cicalino, 200, 100); // Emette una frequenza di 200 hertz per 0,1 secondi dal cicalino

ritardo(300); //.3 Secondo ritardo

} // IF TEMP IS 31-37 else if ((int(DHT.temperature) = 37,00)) {

lcd.clear(); //Cancella lo schermo LCD

lcd.setCursor(0, 1); //Imposta il cursore sulla colonna 0, riga 1

lcd.print("Avviso medio"); // Stampa "Avviso medio" sulla colonna 0, riga 1

lcd.noDisplay(); // Spegne il display LCD (parte del flash)

delay(500); // Rimane spento per 0,5 secondi

display LCD(); // Riaccende il display LCD

delay(500); // Rimane acceso per 0,5 secondi

analogWrite(redpin, 255); // 255 output da redpin (rende RGB arancione)

analogWrite(pin verde, 165); // 165 output da greenpin (rende RGB arancione)

analogWrite(bluepin, 0); // Nessun output da bluepin

tono (cicalino, 500, 900); // Emette una frequenza di 500 hertz per 0,9 secondi dal cicalino

ritardo(300); //.3 Secondo ritardo

} // SE LA TEMP È 38-100

else if ((int(DHT.temperature) = 100.00)) {

lcd.clear(); //Cancella lo schermo LCD

lcd.setCursor(0, 1); //Imposta il cursore sulla colonna 0, riga 1

lcd.print("Chiama 000"); // Stampa "Chiama 000" sulla colonna 0, riga 1

lcd.noDisplay(); // Spegne il display LCD (parte del flash)

delay(250); // Rimane spento per 0,25 secondi

display LCD(); // Riaccende il display LCD

delay(250); // Rimane acceso per 0,25 secondi

analogWrite(redpin, 255); // 255 output da redpin (rende RGB rosso)

analogWrite(pin verde, 0); // Nessun output da greenpin

analogWrite(bluepin, 0); // Nessun output da bluepin

tono (cicalino, 1000, 900); // Emette una frequenza di 1000 hertz per 0,9 secondi dal cicalino

ritardo(300); //.3 Secondo ritardo

}}

Consigliato: