Taula de continguts:

Sistema d’avís contra incendis LCD Arduino: 9 passos
Sistema d’avís contra incendis LCD Arduino: 9 passos

Vídeo: Sistema d’avís contra incendis LCD Arduino: 9 passos

Vídeo: Sistema d’avís contra incendis LCD Arduino: 9 passos
Vídeo: ОБЗОР ВЕТРОВОГО СТЕКЛА GIVI AIRFLOW AFRICA TWIN 2024, De novembre
Anonim
Sistema d’avís contra incendis LCD Arduino
Sistema d’avís contra incendis LCD Arduino
Sistema d’avís contra incendis LCD Arduino
Sistema d’avís contra incendis LCD Arduino
Sistema d’avís contra incendis LCD Arduino
Sistema d’avís contra incendis LCD Arduino

Es tracta d’un projecte realitzat per estudiants que combina les funcions d’una pantalla LCD, un brunzidor, un RGB i un sensor de temperatura DHT.

A la pantalla LCD es visualitza i actualitza la temperatura circumdant actual.

El missatge imprès a la pantalla LCD informa l'usuari del nivell de "perill d'incendi".

La pantalla s’enfosqueix i parpelleja per alertar l’usuari del perill.

El brunzidor es fa més fort i ràpid per alertar l'usuari del perill en funció del nivell de risc actual.

El RGB canvia de verd, groc, taronja i vermell en funció del nivell de risc actual.

Es pot col·locar en un recinte imprès en 3D per obtenir un aspecte més professional.

Això soluciona un problema del món real que no sap quan hi ha risc d’incendi fins que sigui massa tard

Pas 1: reuniu materials

Reuneix materials
Reuneix materials
Reuneix materials
Reuneix materials
Reuneix materials
Reuneix materials

Materials utilitzats en aquest projecte:

1x pantalla LCD

1 sensor DHT_11 de temperatura

1x RGB

1x Piezo Passive Buzzer 1.0v

2x taules de pa petites

3x resistències estàndard

1 x tauler de mida normal

1x Arduino UNO

Bluetack per bloquejar els cables al seu lloc.

Un assortiment de diferents cables acabats, tant oberts com senzills.

Un dispositiu per executar el codi

Accediu a una impressora 3D si voleu un aspecte més elegant i elegant

Pas 2: Configuració de les taules de pa

Configuració de les taules de pa
Configuració de les taules de pa
Configuració de les taules de pa
Configuració de les taules de pa

1. Connecteu el cable taronja del pin etiquetat com a "GND" a la placa Arduino i connecteu-lo al costat negatiu (blau) de la placa. A partir d’aquest moment, si necessitem utilitzar GND per a qualsevol dispositiu extern, simplement els posarem a la mateixa columna que aquesta a la taula de treball.

2. Connecteu el cable vermell del pin etiquetat com a "5V" a la placa Arduino i connecteu-lo al costat positiu (vermell) de la placa. A partir d’aquest moment, si necessitem utilitzar 5V per a qualsevol dispositiu extern, simplement els posarem a la mateixa columna que aquesta a la taula de treball.

Pas 3: Configuració de la pantalla LCD

Configuració de la pantalla LCD
Configuració de la pantalla LCD
Configuració de la pantalla LCD
Configuració de la pantalla LCD
Configuració de la pantalla LCD
Configuració de la pantalla LCD

1. Capgireu el tauler perquè quedi cap per avall amb tots els passadors al costat esquerre.

2. Connecteu un cable 5 des de la part superior esquerra de la fila superior de pins i connecteu-lo al pin número 4 de l'Arduino UNO.

3. Connecteu un cable 6 des de la part superior esquerra de la fila superior de pins i connecteu-lo al pin número 5 de l'Arduino UNO.

4. Connecteu un cable 7 des de la part superior esquerra de la fila superior de pins i connecteu-lo al pin número 6 de l'Arduino UNO.

5. Connecteu un cable 8 des de la part superior esquerra de la fila superior de pins i connecteu-lo al pin número 7 de l'Arduino UNO.

6. Connecteu un cable 9 des de la part superior esquerra de la fila superior de pins i connecteu-lo al pin número 8 de l'Arduino UNO.

7. Connecteu un cable 10 des de la part superior esquerra de la fila superior de pins i connecteu-lo al pin número 9 de l'Arduino UNO.

8. Connecteu un cable 3 des de la part inferior dreta i connecteu-lo a la fila de 5 V de la placa

9. Connecteu un cable 4 des de la part inferior dreta i connecteu-lo a la fila GND de la placa

VEURE IMATGES COM EL DIAGRAMA DEL CIRCUIT MOSTRA DIFERENTS LCD

Pas 4: Configuració de Piezo Buzzer

Configuració de Piezo Buzzer
Configuració de Piezo Buzzer
Configuració de Piezo Buzzer
Configuració de Piezo Buzzer
Configuració de Piezo Buzzer
Configuració de Piezo Buzzer
Configuració de Piezo Buzzer
Configuració de Piezo Buzzer

1. Connecteu un cable del pin GND del brunzidor a la columna GND (blava) de la placa

2. Connecteu un cable del pin VCC del brunzidor a la columna de 5 V (vermella) de la placa

3. Connecteu un cable del pin SIG del zumbador al pin numerat "10" de la placa UNO arduino

VEURE SOBRE LES IMATGES COM EL DIAGRAMA DEL CIRCUIT MOSTRA DIFERENTS BUZZER

Pas 5: Configuració del sensor de temperatura DHT

Configuració del sensor de temperatura DHT
Configuració del sensor de temperatura DHT
Configuració del sensor de temperatura DHT
Configuració del sensor de temperatura DHT
Configuració del sensor de temperatura DHT
Configuració del sensor de temperatura DHT
Configuració del sensor de temperatura DHT
Configuració del sensor de temperatura DHT

1. Configureu el sensor DHT a la taula de proves tal com es mostra més amunt

2. Connecteu el primer pin a l'esquerra del sensor DHT (etiquetat VCC al diagrama de peces) a la columna de 5 V (vermella) de la placa

3. Connecteu el segon pin de l’esquerra del sensor DHT (DADES etiquetades al diagrama de peces) al port A0 de l’Arduino UNO.

4. Connecteu el primer pin a la dreta del sensor DHT (GND etiquetat al diagrama de peces) a la columna GND (blava) de la placa

5. Mireu un tutorial i afegiu a Arduino la biblioteca dht.h que trobareu al final de la instrucció. (Això és obligatori)

Pas 6: Configuració del RGB

Configuració del RGB
Configuració del RGB
Configuració del RGB
Configuració del RGB
Configuració del RGB
Configuració del RGB
Configuració del RGB
Configuració del RGB

1. Col·loqueu el RGB en una petita tauler d’expressió, tal com es mostra més amunt, posant l’accent en la segona pota de l’esquerra del RGB, que és una ranura més propera que les altres tres.

2. Col·loqueu les resistències estàndard al primer, tercer i quart pins. Deixant espai per almenys un cable més (com es mostra més amunt).

3. Connecteu un cable des de darrere de la resistència del pin esquerre del RGB al pin Labeled 2 de l'Arduino UNO

4. Connecteu un cable des de darrere del segon perifèric des del passador esquerre del RGB a la columna GND (blava) de la placa.

5. Connecteu un cable de darrere de la resistència del segon des del pin dret del RGB al pin etiquetat 1 de l'Arduino UNO

6. Connecteu un cable des de darrere de la resistència del pin dret del RGB al pin Labeled 3 de l'Arduino UNO

Pas 7: carcassa d'impressió 3D opcional

Carcassa d’impressió 3D opcional
Carcassa d’impressió 3D opcional
Carcassa d’impressió 3D opcional
Carcassa d’impressió 3D opcional
Carcassa d’impressió 3D opcional
Carcassa d’impressió 3D opcional

1. Cerqueu un tutorial sobre com imprimir en 3D.

2. Imprimiu el disseny adjunt següent fet a Autodesk Fusion 360 (fitxer.stl)

3. Raspeu l'excés de material 3D i suavitzeu la superfície

4. Vegeu la imatge superior per obtenir indicacions sobre on col·locar les peces Arduino.

Pas 8: el codi i els fitxers

El codi i els fitxers
El codi i els fitxers

-La biblioteca DHT.h està adjunta. (UNZIP)

- S'adjunta el codi amb comentaris detallats, però també es troba al següent pas.

-S’adjunta el fitxer.stl de la carcassa 3D

-Es torna a adjuntar el diagrama de circuits. Assegureu-vos de consultar els passos reals per a la pantalla LCD i el brunzidor piezoelèctric ja que s’utilitzaven diferents components.

Pas 9: Codi Arduino

Codi Arduino
Codi Arduino
Codi Arduino
Codi Arduino

// SISTEMA LCD D'ADVERTÈNCIA D'INCENDIS // Llegeix l'entrada del pin de temperatura DHT i, segons si fa calor o no, canvia un rgb i un altaveu per indicar a l'usuari si té perill d'incendi. // També mostra la temperatura a la pantalla LCD.

// CONFIGURACIÓ DHT

#include // Inclou la biblioteca DHT

#define dht_dpin A0 // Indica a la placa que el pin DHT es troba a l'entrada analògica 0

dht DHT; // dht = DHT

// CONFIGURACIÓ DE CRISTALL LÍQUID

#include // Inclou la biblioteca de cristall líquid

LiquidCrystal lcd (8, 9, 4, 5, 6, 7); // Escurça a LCD / indica a arduino quins ports ocupa el lcd

// DEFINICIÓ RGB + BUZZER

#define redpin 1 // Defineix el redpin de RGB al port 1

#define greenpin 2 // Defineix el greenpin de RGB al port 2

#define bluepin 3 // Defineix bluepin de RGB al port 3

#define buzzerpin 10 // Defineix el buzzerpin al port 10

// LES VARIABLES

int temp = analogRead (DHT.temperature); // Estableix "temp" enter que és el valor de l'ordre DHT.temperature

configuració nul·la () {

// SORTIDA / ENTRADA

analogWrite (redpin, OUTPUT); // Declarar / definir redpin com a sortida

analogWrite (greenpin, OUTPUT); // Declareu / definiu el punt verd com a sortida

analogWrite (bluepin, OUTPUT); // Declareu / definiu el pin blau com a sortida

pinMode (buzzerpin, OUTPUT); // Declareu / definiu el buzzerpin com a sortida

// PANTALLA LCD

lcd.begin (16, 2); // Definiu la pantalla LCD com a 16 columnes i 2 files}

bucle buit () {

// CODI LCD SENSE VARIABILITAT

DHT.read11 (dht_dpin); // Llegiu també l'entrada de dht_dpin (A0)

lcd.setCursor (0, 0); // Estableix el cursor a la columna 0, fila 0

lcd.print ("És"); // Escriu "És" a la pantalla LCD

lcd.print (temperatura DHT); // Imprimeix el valor de temperatura DHT des del pin DHT a la columna 0, fila 0

lcd.print (""); // Imprimeix un espai després de la temperatura

lcd.print ((char) 223); // imprimeix el signe de grau després de la temperatura

lcd.print ("C"); // Imprimeix una "c" després del signe de graus per simbolitzar centígrads

// PARPEL LCD

lcd.setCursor (0, 1); // Estableix el cursor a la columna 0, fila 1

lcd.noDisplay ();

lcd.print ("No hi ha perill d'incendi"); // Imprimeix "Sense possibilitat de foc"

lcd.noDisplay (); // Apaga la pantalla LCD (part del flaix)

delay (1000); // Es queda fora durant 1 segon

lcd.display (); // Torna a activar la pantalla LCD

delay (1000); // Es manté durant 1 segon

// CODI RGB + BUZZER

analogWrite (redpin, 0); // Sense sortida del pin vermell

analogWrite (greenpin, 255); // 255 sortida de greenpin (fa que el RGB sigui verd)

analogWrite (bluepin, 0); // Sense sortida del pin blau

to (timbre, 20, 20); // // Emet una freqüència de 20 Hz durant 0,02 segons des del brunzidor

// SI EL TEMP ÉS 25-30

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

lcd.clear (); // Esborra la pantalla LCD

lcd.setCursor (0, 1); // Estableix el cursor a la columna 0, fila 1

lcd.print ("Alerta petita"); // Imprimeix "Alerta petita" a la columna 0, fila 1

lcd.noDisplay (); // Apaga la pantalla LCD (part del flaix)

delay (1000); // Es queda fora durant 1 segon

lcd.display (); // Torna a activar la pantalla LCD

delay (1000); // Es manté durant 1 segon

analogWrite (redpin, 255); // 255 sortida de redpin (fa que el RGB sigui groc)

analogWrite (greenpin, 255); // 255 sortida de greenpin (fa que el RGB sigui groc)

analogWrite (bluepin, 0); // Sense sortida del pin blau

to (timbre, 200, 100); // Emet una freqüència de 200 Hz durant 0,1 segons des del brunzidor

retard (300); //.3 Segon retard

} // SI TEMP IS 31-37 else if ((int (DHT.temperature) = 37.00)) {

lcd.clear (); // Esborra la pantalla LCD

lcd.setCursor (0, 1); // Estableix el cursor a la columna 0, fila 1

lcd.print ("Alerta mitjana"); // Imprimeix "Alerta mitjana" a la columna 0, fila 1

lcd.noDisplay (); // Apaga la pantalla LCD (part del flaix)

delay (500); // Es queda fora durant 0,5 segons

lcd.display (); // Torna a activar la pantalla LCD

delay (500); // Es manté durant 0,5 segons

analogWrite (redpin, 255); // 255 sortida de redpin (fa que el RGB sigui taronja)

analogWrite (greenpin, 165); // 165 sortida de greenpin (fa que el RGB sigui taronja)

analogWrite (bluepin, 0); // No hi ha cap sortida de Bluepin

to (timbre, 500, 900); // Emet una freqüència de 500 Hz durant 0,9 segons des del brunzidor

retard (300); //.3 Segon retard

} // SI EL TEMP ÉS DE 38-100

else if ((int (DHT.temperature) = 100,00)) {

lcd.clear (); // Esborra la pantalla LCD

lcd.setCursor (0, 1); // Estableix el cursor a la columna 0, fila 1

lcd.print ("Truca al 000"); // Imprimeix "Truca a 000" a la columna 0, fila 1

lcd.noDisplay (); // Apaga la pantalla LCD (part del flaix)

delay (250); // Es queda fora durant 0,25 segons

lcd.display (); // Torna a activar la pantalla LCD

delay (250); // S’activa durant 0,25 segons

analogWrite (redpin, 255); // 255 sortida de redpin (fa que RGB sigui vermell)

analogWrite (greenpin, 0); // Sense sortida de greenpin

analogWrite (bluepin, 0); // No hi ha cap sortida de Bluepin

to (timbre, 1000, 900); // Emet una freqüència de 1000 Hz durant 0,9 segons des del brunzidor

retard (300); //.3 Segon retard

}}

Recomanat: