0% ont trouvé ce document utile (0 vote)
19 vues5 pages

Arduino

Le document décrit le câblage et le code Arduino pour un système de détection de séisme utilisant un accéléromètre, un écran LCD, un haut-parleur, un servo-moteur et des LEDs. Le système alerte l'utilisateur en cas de détection de mouvement supérieur à un seuil défini, en affichant un message sur l'écran LCD, en allumant des LEDs et en jouant un son. En cas de séisme, le servo-moteur ouvre une porte de secours après une alerte visuelle et sonore.

Transféré par

hazzaotb02
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
19 vues5 pages

Arduino

Le document décrit le câblage et le code Arduino pour un système de détection de séisme utilisant un accéléromètre, un écran LCD, un haut-parleur, un servo-moteur et des LEDs. Le système alerte l'utilisateur en cas de détection de mouvement supérieur à un seuil défini, en affichant un message sur l'écran LCD, en allumant des LEDs et en jouant un son. En cas de séisme, le servo-moteur ouvre une porte de secours après une alerte visuelle et sonore.

Transféré par

hazzaotb02
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Branchements :

1. GY-61 :

o VCC → 5V Arduino

o GND → GND Arduino

o X/Y/Z → Pins analogiques (A0, A1, A2)

2. Écran LCD (en u lisant un Shield) :

o Connecter directement sur l'Arduino UNO.

3. Haut-parleur :

o Une borne → Pin numérique D9 via une résistance.

o Autre borne → GND

4. Servo-moteur :

o Signal → Pin D10

o VCC → 5V

o GND → GND

5. LEDs :

 Connecter les anodes (+) des LEDs via des résistances 220Ω aux pins D2 à D7.

 Cathodes (-) → GND.

Code Arduino :

#include <LiquidCrystal.h>
#include <Servo.h>

// Ini alisa on de l'écran LCD


LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

// Broches pour l'accéléromètre


const int pinX = A0;
const int pinY = A1;
const int pinZ = A2;

// Broches pour le haut-parleur et LEDs


const int speakerPin = 9;
const int ledPins[] = {2, 3, 4, 5, 6, 7};

// Servo-moteur
Servo servo;
const int servoPin = 10;

// Seuil de détec on du séisme


const int seismeThreshold = 50; // Ajuster selon les tests

void setup() {
// Configura on des broches
pinMode(speakerPin, OUTPUT);
for (int i = 0; i < 6; i++) {
pinMode(ledPins[i], OUTPUT);
}
servo.a ach(servoPin);

// Ini alisa on du LCD


lcd.begin(16, 2);
lcd.print("Systeme Pret");
// Posi on ini ale du servo (porte fermée)
servo.write(0);
delay(2000);
lcd.clear();
}

void loop() {
// Lire les valeurs de l'accéléromètre
int x = analogRead(pinX);
int y = analogRead(pinY);
int z = analogRead(pinZ);

// Calcul de la varia on (simplifié pour détecter un choc)


int mouvement = abs(x - 512) + abs(y - 512) + abs(z - 512);

// Si un séisme est détecté


if (mouvement > seismeThreshold) {
lcd.clear();
lcd.print("ALERTE SEISME!");
lcd.setCursor(0, 1);
lcd.print("Degre: ");
lcd.print(mouvement); // Affiche l'intensité (à ajuster)

// Ac ver LEDs
for (int i = 0; i < 6; i++) {
digitalWrite(ledPins[i], HIGH);
}

// Jouer un son d'alerte


tone(speakerPin, 1000, 1000); // Fréquence 1000Hz pendant 1 seconde
delay(1000);
noTone(speakerPin);

// Message vocal (Simula on)


lcd.clear();
lcd.print("SORTIR PAR LA");
lcd.setCursor(0, 1);
lcd.print("PORTE DE SECOURS");

// Ouvrir la porte (servo)


servo.write(90); // Posi on pour ouverture de porte
delay(5000); // Temps pour sor r

// Reme re la porte à zéro


servo.write(0);

// Éteindre LEDs
for (int i = 0; i < 6; i++) {
digitalWrite(ledPins[i], LOW);
}
// A ente avant retour à la normale
delay(5000);
lcd.clear();
lcd.print("Systeme Pret");
}
}

Vous aimerez peut-être aussi