Table des matières:

Système d'avertissement de sécurité incendie Arduino LCD : 9 étapes
Système d'avertissement de sécurité incendie Arduino LCD : 9 étapes

Vidéo: Système d'avertissement de sécurité incendie Arduino LCD : 9 étapes

Vidéo: Système d'avertissement de sécurité incendie Arduino LCD : 9 étapes
Vidéo: BigTreeTech - SKR 3 - TMC2208 UART 2024, Novembre
Anonim
Système d'avertissement de sécurité incendie Arduino LCD
Système d'avertissement de sécurité incendie Arduino LCD
Système d'avertissement de sécurité incendie Arduino LCD
Système d'avertissement de sécurité incendie Arduino LCD
Système d'avertissement de sécurité incendie Arduino LCD
Système d'avertissement de sécurité incendie Arduino LCD

Il s'agit d'un projet d'étudiant qui combine les fonctions d'un écran LCD, d'un buzzer, d'un capteur de température RVB et DHT.

La température ambiante actuelle est affichée et mise à jour sur l'écran LCD.

Le message imprimé sur l'écran LCD informe l'utilisateur du niveau de « danger d'incendie ».

L'écran s'assombrit et clignote pour alerter l'utilisateur du danger.

Le buzzer devient plus fort et plus rapide pour alerter l'utilisateur du danger en fonction du niveau de risque actuel.

Le RVB change de vert, jaune, orange et rouge en fonction du niveau de risque actuel.

Peut être placé dans un boîtier imprimé en 3D pour un look plus professionnel.

Cela résout un problème du monde réel où les gens ne savent pas quand il y a un risque d'incendie jusqu'à ce qu'il soit trop tard

Étape 1: Rassemblez les matériaux

Rassembler des matériaux
Rassembler des matériaux
Rassembler des matériaux
Rassembler des matériaux
Rassembler des matériaux
Rassembler des matériaux

Matériaux utilisés dans ce projet:

1x écran LCD

1x capteur de température DHT_11

1x RVB

1x Avertisseur Piezo Passif 1.0v

2x petites planches à pain

3x résistances standard

1x planche à pain de taille normale

1x Arduino UNO

Bluetack pour verrouiller les fils en place.

Un assortiment de fils à différentes extrémités, à la fois ouverts et simples.

Un appareil pour exécuter le code

Accès à une imprimante 3D si vous désirez la coque extérieure et un look plus poli

Étape 2: Configuration des planches à pain

Mise en place des planches à pain
Mise en place des planches à pain
Mise en place des planches à pain
Mise en place des planches à pain

1. Connectez le fil orange de la broche étiquetée "GND" sur la carte Arduino et connectez-le au côté négatif (bleu) de la planche à pain. À partir de maintenant, si nous devons utiliser GND pour des périphériques externes, nous les mettrons simplement dans la même colonne que celle-ci sur la maquette.

2. Connectez le fil rouge de la broche étiquetée "5V" sur la carte Arduino et connectez-le au côté positif (rouge) de la planche à pain. À partir de ce moment, si nous devons utiliser 5V pour des périphériques externes, nous les mettrons simplement dans la même colonne que celle-ci sur la maquette.

Étape 3: Configuration de l'écran LCD

Configuration de l'écran LCD
Configuration de l'écran LCD
Configuration de l'écran LCD
Configuration de l'écran LCD
Configuration de l'écran LCD
Configuration de l'écran LCD

1. Retournez la carte pour qu'elle soit à l'envers avec toutes les broches sur le côté gauche.

2. Connectez un fil 5 en partant du haut à gauche sur la rangée supérieure de broches et connectez-le à la broche numéro 4 de l'Arduino UNO.

3. Connectez un fil 6 en haut à gauche sur la rangée supérieure de broches et connectez-le à la broche numéro 5 sur l'Arduino UNO.

4. Connectez un fil 7 en haut à gauche sur la rangée supérieure de broches et connectez-le à la broche numéro 6 sur l'Arduino UNO.

5. Connectez un fil 8 en haut à gauche sur la rangée supérieure de broches et connectez-le à la broche numéro 7 sur l'Arduino UNO.

6. Connectez un fil 9 en haut à gauche sur la rangée supérieure de broches et connectez-le à la broche numéro 8 sur l'Arduino UNO.

7. Connectez un fil 10 en haut à gauche sur la rangée supérieure de broches et connectez-le à la broche numéro 9 sur l'Arduino UNO.

8. Connectez un fil 3 en bas à droite et connectez-le à la rangée 5V sur la planche à pain

9. Connectez un fil 4 en bas à droite et connectez-le à la rangée GND sur la planche à pain

VOIR LES IMAGES COMME LE SCHÉMA DE CIRCUIT MONTRE DIFFÉRENTS LCD

Étape 4: Configuration du buzzer piézo

Configuration du buzzer piézo
Configuration du buzzer piézo
Configuration du buzzer piézo
Configuration du buzzer piézo
Configuration du buzzer piézo
Configuration du buzzer piézo
Configuration du buzzer piézo
Configuration du buzzer piézo

1. Connectez un fil de la broche GND sur le buzzer à la colonne GND (Bleu) sur la planche à pain

2. Connectez un fil de la broche VCC sur le buzzer à la colonne 5V (rouge) sur la planche à pain

3. Connectez un fil de la broche SIG sur le buzzer à la broche numérotée "10" sur la carte arduino UNO

VOIR LES IMAGES CI-DESSUS COMME LE DIAGRAMME DE CIRCUIT MONTRE DIFFERENT BUZZER

Étape 5: Configuration du capteur de température DHT

Configuration du capteur de température DHT
Configuration du capteur de température DHT
Configuration du capteur de température DHT
Configuration du capteur de température DHT
Configuration du capteur de température DHT
Configuration du capteur de température DHT
Configuration du capteur de température DHT
Configuration du capteur de température DHT

1. Configurez le capteur DHT dans la maquette comme indiqué ci-dessus

2. Connectez la première broche sur la gauche du capteur DHT (étiqueté VCC dans le schéma de la pièce) à la colonne 5V (rouge) sur la planche à pain

3. Connectez la deuxième broche à gauche du capteur DHT (étiqueté DATA dans le schéma partiel) au port A0 de l'Arduino UNO

4. Connectez la première broche à droite du capteur DHT (étiqueté GND dans le schéma de la pièce) à la colonne GND (bleue) sur la planche à pain

5. Regardez un tutoriel et ajoutez la bibliothèque dht.h trouvée à la fin de l'instructable à Arduino. (Ceci est obligatoire)

Étape 6: Configuration du RVB

Configuration du RVB
Configuration du RVB
Configuration du RVB
Configuration du RVB
Configuration du RVB
Configuration du RVB
Configuration du RVB
Configuration du RVB

1. Placez le RVB dans une petite planche à pain comme indiqué ci-dessus, en mettant l'accent sur la deuxième jambe à partir de la gauche du RVB étant un emplacement plus proche que les trois autres

2. Placez des résistances standard sur les première, troisième et quatrième broches. Laisser de la place pour au moins un fil supplémentaire (comme indiqué ci-dessus).

3. Connectez un fil derrière la résistance sur la broche gauche du RGB à la broche étiquetée 2 sur l'Arduino UNO

4. Connectez un fil derrière la seconde éloignée de la broche gauche du RVB à la colonne GND (bleue) de la planche à pain.

5. Connectez un fil derrière la résistance sur la seconde de la broche droite du RVB à la broche étiquetée 1 sur l'Arduino UNO

6. Connectez un fil derrière la résistance sur la broche droite du RVB à la broche étiquetée 3 sur l'Arduino UNO

Étape 7: boîtier d'impression 3D en option

Boîtier d'impression 3D en option
Boîtier d'impression 3D en option
Boîtier d'impression 3D en option
Boîtier d'impression 3D en option
Boîtier d'impression 3D en option
Boîtier d'impression 3D en option

1. Trouvez un tutoriel sur la façon d'imprimer en 3D.

2. Imprimez la conception ci-jointe réalisée sur Autodesk Fusion 360 (fichier.stl)

3. Grattez l'excès de matériau 3D et lissez la surface

4. Voir l'image ci-dessus pour savoir où placer les pièces Arduino.

Étape 8: Le code et les fichiers

Le code et les fichiers
Le code et les fichiers

-La bibliothèque DHT.h est jointe. (UNZIP)

-Le code avec des commentaires détaillés complets est joint mais est également à l'étape suivante.

-Le fichier.stl pour le boîtier 3D est joint

-Le schéma de circuit est à nouveau joint. Assurez-vous de vous référer aux étapes réelles pour l'écran LCD et le buzzer piézo, car différents composants ont été utilisés.

Étape 9: Code Arduino

Code Arduino
Code Arduino
Code Arduino
Code Arduino

//SYSTÈME D'AVERTISSEMENT D'INCENDIE LCD // Lit l'entrée de la broche de température DHT et, selon qu'il fait chaud ou non, modifie un RVB et un haut-parleur pour indiquer à l'utilisateur s'il y a un risque d'incendie. // Affiche également la température sur l'écran LCD.

// CONFIGURATION DHT

#include // Inclut la bibliothèque DHT

#define dht_dpin A0 // Indique à la carte que la broche DHT est dans l'entrée analogique 0

dht DHT; // dht = DHT

// SETUP CRISTAUX LIQUIDES

#include // Inclut la bibliothèque Liquid Crystal

LiquidCrystal LCD (8, 9, 4, 5, 6, 7); // Raccourci vers l'écran LCD / indique à l'arduino quels ports l'écran LCD occupe

// DÉFINITION RVB + BUZZER

#define redpin 1 // Définit le redpin de RVB dans le port 1

#define greenpin 2 // Définit le greenpin de RVB dans le port 2

#define bluepin 3 // Définit le bluepin de RVB dans le port 3

#define buzzerpin 10 // Définit le buzzerpin dans le port 10

// VARIABLE/S

int temp = analogRead(DHT.temperature); // Etablit l'entier "temp" qui est la valeur de la commande DHT.temperature

void setup() {

// SORTIE ENTRÉE

analogWrite(redpin, OUTPUT); // Déclarer/définir redpin comme sortie

analogWrite(greenpin, OUTPUT); // Déclarer/définir greenpin comme sortie

analogWrite(bluepin, OUTPUT); // Déclare/définit le bluepin comme sortie

pinMode(buzzerpin, SORTIE); // Déclarer/définir buzzerpin comme sortie

// ÉCRAN LCD

lcd.begin (16, 2); // Définir l'écran LCD comme 16 colonnes et 2 lignes }

boucle vide() {

// CODE LCD SANS VARIABILITE

DHT.read11(dht_dpin); // Lire également l'entrée de dht_dpin (A0)

lcd.setCursor(0, 0); // Définit le curseur sur la colonne 0, la ligne 0

lcd.print("C'est "); //Écrit "C'est" sur l'écran LCD

lcd.print(DHT.temperature); // Imprime la valeur DHT.temperature de la broche DHT sur la colonne 0, ligne 0

lcd.print(" "); // Imprime un espace après la température

lcd.print((char)223); // imprime le signe de degré après la température

lcd.print("C"); // Imprime un "c" après le signe degrés pour symboliser celsius

// CLIGNOTANT ACL

lcd.setCursor(0, 1); // Définit le curseur sur la colonne 0, ligne 1

lcd.noDisplay();

lcd.print("Aucun danger d'incendie"); // Imprime "Aucun risque d'incendie"

lcd.noDisplay(); // Éteint l'écran LCD (partie du flash)

delay(1000);// Reste éteint pendant 1 seconde

affichage LCD(); // Rallume l'écran LCD

delay(1000);// Reste allumé pendant 1 seconde

// RVB + CODE BUZZER

analogWrite(redpin, 0); // Pas de sortie de la broche rouge

analogWrite(greenpin, 255); // 255 sorties de greenpin (rend RVB vert)

analogWrite(bluepin, 0); // Pas de sortie de la broche bleue

tonalité (buzzerpin, 20, 20); // // Émet une fréquence de 20 hertz pendant 0,02 seconde à partir du buzzer

// SI LA TEMPÉRATURE EST 25-30

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

lcd.clear(); //Efface l'écran LCD

lcd.setCursor(0, 1); // Définit le curseur sur la colonne 0, ligne 1

lcd.print("Petite alerte"); // Imprime "Petite alerte" sur la colonne 0, ligne 1

lcd.noDisplay(); // Éteint l'écran LCD (partie du flash)

delay(1000);// Reste éteint pendant 1 seconde

affichage LCD(); // Rallume l'écran LCD

delay(1000);// Reste allumé pendant 1 seconde

analogWrite(redpin, 255); // 255 sorties de redpin (rend RVB jaune)

analogWrite(greenpin, 255); // 255 sorties de greenpin (rend RVB jaune)

analogWrite(bluepin, 0); // Pas de sortie de la broche bleue

tonalité (buzzerpin, 200, 100); // Émet une fréquence de 200 hertz pendant 0,1 seconde à partir du buzzer

retard (300); //.3 Deuxième délai

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

lcd.clear(); //Efface l'écran LCD

lcd.setCursor(0, 1); // Définit le curseur sur la colonne 0, ligne 1

lcd.print("Alerte moyenne"); // Imprime "Alerte moyenne" sur la colonne 0, ligne 1

lcd.noDisplay(); // Éteint l'écran LCD (partie du flash)

delay(500);// Reste éteint pendant 0,5 seconde

affichage LCD(); // Rallume l'écran LCD

delay(500);// Reste allumé pendant 0,5 seconde

analogWrite(redpin, 255); // 255 sorties de redpin (rend RVB orange)

analogWrite(greenpin, 165); // 165 sorties de greenpin (rend RVB orange)

analogWrite(bluepin, 0); // Pas de sortie de bluepin

tonalité (buzzerpin, 500, 900); // Émet une fréquence de 500 hertz pendant 0,9 seconde à partir du buzzer

retard (300); //.3 Deuxième délai

} // SI LA TEMPÉRATURE EST 38-100

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

lcd.clear(); //Efface l'écran LCD

lcd.setCursor(0, 1); //Définit le curseur sur la colonne 0, ligne 1

lcd.print("Appeler 000"); // Imprime "Call 000" sur la colonne 0, ligne 1

lcd.noDisplay(); // Éteint l'écran LCD (partie du flash)

delay(250);// Reste éteint pendant 0,25 seconde

affichage LCD(); // Rallume l'écran LCD

delay(250);// Reste allumé pendant 0,25 seconde

analogWrite(redpin, 255); // 255 sorties de redpin (rend RVB rouge)

analogWrite(greenpin, 0); // Aucune sortie de greenpin

analogWrite(bluepin, 0); // Pas de sortie de bluepin

tonalité (buzzerpin, 1000, 900); // Émet une fréquence de 1000 hertz pendant 0,9 seconde à partir du buzzer

retard (300); //.3 Deuxième délai

}}

Conseillé: