Feux de carrefour

De Les Fabriques du Ponant
Aller à : navigation, rechercher

Un carrefour à feux est une intersection dont le trafic est réglé par des feux de signalisation lumineux pilotés par un contrôleur. Le réglage des cycles de feux doit permettre d'assurer la sécurité des automobilistes et des piétons tout en permettant un débit maximal.d'où vient l'idée du projet.

ENIB - École Nationale d'Ingénieurs de Brest.
Arduino-Decibel-Meter.

Description du projet

Dans ce projet, nous allons donc utiliser un microphone à condensateur Electret normal avec Arduino et l'on va essayer d'afficher les mesures via des LEDs de couleurs différentes : verte, jaune et rouge.

Équipe en charge du projet

  • Khalid BELLACHHEB
  • Yasin AGCA
  • Reda ABARKACH
  • Jad BOULOS

Matériel nécessaire

  • 1 x Arduino
  • 1 x Arduino Microphone
  • 10 x LEDs (5 vertes, 3 jaunes, 2 rouges)
  • 1 x 220Ω Résistance
  • Jumper wires (fils)
  • 1 x Breadboard (maquette)
Matériels.

Signification couleurs

la couleur :

  • verte : zone normal [0 db - 80 db]
  • jaune : zone dangereuse [80 db - 120 db]
  • rouge : zone de douleur [120 db - 180 db]

Réalisation

Étape 1 : Réalisation du schéma de câblage

Nous avons utilisé le logiciel Fritzing pour concevoir notre système de mesure.

Schéma de câblage.

Étape 2 : Code Arduino

le code Arduino du projet optimisé :


void setup() {
//voici une entrée pour capteur de son
pinMode(A0, INPUT);
//Ici, nous mettons en place toutes les broches comme sorties pour les LED
for(int z = 0; z < 10; z++){
pinMode(z, OUTPUT);
}
}
void loop() {
//nous stockons ici la valeur du volume
int volume = analogRead(A0);
//la valeur maximale pour la lecture analogique est de 1023 mais il doit être très très fort pour atteindre cette valeur
//donc on a l'abaisse dans la fonction de la carte à 700
//mappage de la valeur du volume pour faciliter l'allumage des voyants
volume = map(volume, 0, 700, 0, 10);
//pour la boucle pour allumer ou éteindre toutes les LED
//grâce à cette boucle le code pour ce projet est très court
//nous passons par toutes les broches où nous avons des LED et en vérifiant si le volume est
//plus grand que le nombre de broches (c'est pourquoi nous cartographions le volume)
for(int a = 0; a < 10; a++){ if(volume >= a){
//si elle est plus grande, nous pouvons allumer la LED
digitalWrite(a, HIGH);
}else{
//s'il est plus petit, nous pouvons éteindre la LED
digitalWrite(a, LOW);
}
}
}

Étape 3 : Assemblage