Skip to main content

Travail Arduino Erwan Courel et Yassine Squalli Houssaini

Voici un rapport d'ensemble du travail réalisé en duo ( Yassine et Erwan ) sur Arduino.

1- LED qui clignote

Dans ce premier travail, il fallait avec Arduino faire clignoter une LED. Cela était utile pour comprendre le fonctionnement de ce système.

Voici le code utilisé pour que la LED clignote:

void setup() {
      pinMode(2,OUTPUT); //Pin 2 en mode sortie
}

void loop() {
  
digitalWrite(2,HIGH); //On allume la LED
delay(1000); //Délais de 1sec
digitalWrite(2,LOW); // On éteint la LED
delay(1000); //délai de 1sec

}

Dans setup(), on indique que la broche 2 est une sortie (OUTPUT) : Arduino pourra y envoyer du courant.courant pour allumer la led.

La fonction loop() permet une boucle infinie

delay(1000) permet d'attendre 1 seconde - 1 click correspond à 1 milliseconde

La LED va s'allumeallumer pendant une seconde et s'éteintteindre une seconde

seconde.

Voici le montage associé:

WhatsApp Image 2026-01-16 at 17.46.05.jpeg

Vidéo présentant le résultat:

2- Trois LED qui clignotent à des fréquences différentes

Après avoir compris le principe de programmation du système Arduino, il faalaitfallait maintenant faire clignoter trois LED à des fréquences différentes.

Voici le programme utilisé:

//Définition des pins des LEDS
int led_bleu = 2;
int led_jaune = 4;
int led_verte = 7;

//Définition des variables de temps précendents pour chaque LED
unsigned long preced_bleu = 0;
unsigned long preced_jaune = 0;
unsigned long preced_verte = 0;

// Intervalles en millisecondes
const long dureeAllumage = 1000; // Les led restent allumées 1s

const long periode_bleu = 3000; // S'allume toutes les 3s
const long periode_jaune = 5000; // S'allume toutes les 5s
const long periode_verte = 7000; // S'allume toutes les 7s

//Variable pour le temps actuelle
unsigned long actu;

void setup() {
      pinMode(2,OUTPUT);
      pinMode(4,OUTPUT);
      pinMode(7,OUTPUT);

}

void loop() {
    actu = millis();

//Gestion LED bleu 
if (actu - preced_bleu >= periode_bleu) {
      preced_bleu = actu;
    }
    if (actu - preced_bleu < dureeAllumage) {
      digitalWrite(led_bleu, HIGH);
    } else {
      digitalWrite(led_bleu, LOW);
    }

//Gestion LED jaune
if (actu - preced_jaune >= periode_jaune) {
      preced_jaune = actu;
    }
    if (actu - preced_jaune < dureeAllumage) {
      digitalWrite(led_jaune, HIGH);
    } else {
      digitalWrite(led_jaune, LOW);
    }


//Gestion LED verte
if (actu - preced_verte >= periode_verte) {
      preced_verte = actu;
    }
    if (actu - preced_verte < dureeAllumage) {
      digitalWrite(led_verte, HIGH);
    } else {
      digitalWrite(led_verte, LOW);
    }

}

 

Avec ce programme on peut faire clignoter les LED de façon indépendante.

Les LED (bleue, jaune, verte) sot sont branchées sur unedes brochebroches différente.rentes. Chaque LED s'allume 1 sec à des fréquences différentes

bleueBleue : toutes les 3 secondes

jauneJaune : toutes les 5 secondes

verteVerte : toutes les 7 secondes

millis() donne le temps écoulé depuis le démarrage de l’Arduino en millisecondes.

 

Les trois LED peuvent clignoter de manière indépendante.

Voici le montage associé:

WhatsApp Image 2026-01-30 at 16.31.10.jpeg

Voici une vidéo présentant le travail:

3- LED avec capteur

L'objectif était à partir d'un capteur de distance deinfrarouge d'éteindre une LED lorsque le capteur détecte un signal,obstacle, le reste du temps la LED est allumée.

Voici le programme utilisé:

void setup()  {
    Serial.begin(9600); //Inialisaiton de la console pour lire
    pinMode(12,INPUT); //Entrée du capteur
    pinMode(13,OUTPUT); //Sortie qui allumera la LED
}

void loop()  {
      delay(1000); //Pause chaque seconde pour la détection
      if(digitalRead(12)==LOW)  { //Quand c'est 0 c'est qu'on détecte
        Serial.println("Objet in range");
        digitalWrite(13,LOW); // On allume la LED

      }
      else  {
        Serial.println("Objet out of range"); //Détection d'un objet sinon
        digitalWrite(13,HIGH); //On allume
      }

}

 

Dans setup(), on initialise (Serial.begin(9600)) pourcar c'est ce qui permet d'afficher des messages sur l’ordinateur,le logiciel d'Arduino, on définit la broche 12 en entrée (donnés du capteur) et la broche 13 en sortie (LED).

Dans loop(), le programme attend 1 seconde (delay(1000)), puis lit l’état du capteur avec (digitalRead(12).

Si la valeur est LOW, cela signifie qu’un objet est détecté : le message "Objet in range" est affiché et la LED s’allume.

Sinon, aucun objet n’est détecté : le message "Objet out of range" s’affiche et la LED s’éteint.

Voici une photo du montage:

WhatsApp Image 2026-01-30 at 16.31.02.jpeg

Voici une vidéo du résultat: