Signaux et capteurs Arduino en Seconde

Acquis du Collège

Tension et intensité

Ex : 17,20,23,27 p 315

S'exercer à tracer une caractéristique

Version DEBUTANT

Quelques ressources


Micro-contrôleur ARDUINO et capteurs

Le microcontroleur

Sa découverte

Les IDE

Connection Bluetooth

Vituino

Bluetooth electronics Apps

Les capteurs et actionneurs

Capteurs électriques..

La Conversion Analogique Numérique CAN

Programmation et Simulation

Cicuit.IO

Fritzing

Les librairies


18 Projets-Défis Arduino en Seconde

 

Séquences permettant de construire des Projets-Défis 

  1. Visionner la vidéo ou lire l'objectif
  2. Schématiser : Capteur-Microcontroleur-Actionneur
  3. Coder ou modifier le code existant
  4. Simuler avec Tinkercad / faire tester par ces pairs
  5. Schématiser avec  Fritzing
  6. Construire et tester
  7. Améliorer
  8. Partager-Diffuser

Projet 1 :Variateur de lumière en fonction de l'ensoleillement

Objectif : " L'intensité lumineuse d'une LED doit varier en fonction de la lumière captée par une photorésistance LDR"

 

Composants spécifiques :

  • LED
  • LDR

Fonctions spécifiques vues :

If else

println

 

Extensions possibles :

 La couleur d’une Del RGB pourrait varier en fonction de l’éclairement

 


CLIQUER sur l'ICONE pour afficher plein ECRAN


Projet 2 : Détecteur d'incendie

Objectif : " Une LED s'allume lorsque la température dépasse un seuil "

 

Composants spécifiques :

  • capteur de température TMP36

Fonctions spécifiques vues :

 

 

Extensions possibles :

Un ventilateur s'active ou un buzzeur se met en marche !

 

Alimentation: 2,7 à 5,5 Vcc

Plage de mesure: -40°C à +125°C

Précision: ±1°C

Conversion: 10 mV/°C

Tension à 25°C: 750 mV

Tension d'offset: 0,5 Vcc


Projet 3 :Fermeture du volet lorsqu'il fait froid !

Objectif : " La position du volet varie ( tout ou rien ) en fonction de la température  captée par un capteur de température"

 

Composants spécifiques :

  • Servomoteur micro
  • TMP36 : capteur de température

Fonctions spécifiques vues :

mainServo.attach(3);

float

map(tempC, 0, 50, 0, 180)

 

Extensions possibles :

 La position des volets pourrait varier en continue avec la température ou avec la lumière en remplaçant le capteur de température avec une photorésistance !

Un microrupteur peut être ajouté pour stopper la descente des volets

 

Alimentation: 2,7 à 5,5 Vcc

Plage de mesure: -40°C à +125°C

Précision: ±1°C

Conversion: 10 mV/°C

Tension à 25°C: 750 mV

Tension d'offset: 0,5 Vcc



Projet 4 :  Passage à niveau

 Objectif : " Le passage à niveau est fermé : la barrière est levé , le piéton appuie sur le bouton, la barrière s'abaisse, le feu passe au vert, "

 

Composants spécifiques :

  • Servomoteur micro

Fonctions spécifiques vues :

mainServo.attach(9);


Projet 5 :   Détecteur de flamme

Objectif : "Alerte au feu"

 

 Composants spécifiques :

Détecteur de flamme KY -026

Moniteur ou LED

 

Fonctions spécifiques vues :

 

 Extensions possibles :

La valeur de la température est affichée ou une pompe se met en route !

 

Le code....

int led = 13;
int digitalPin = 2; // KY-026 signal digital
int analogPin = A0; // KY-026 signal analog
int digitalVal;
int analogVal;

void setup()
{
  pinMode(led, OUTPUT);
  pinMode(digitalPin, INPUT);
    Serial.begin(9600);
}
void loop()
{
  // Lecture et affectation du signal ANALOGIQUE du capteur
    digitalVal = digitalRead(digitalPin);
  // Test si le signal digital est HAUT
  if(digitalVal == HIGH)
    // allume ou éteint la DEL
  {
    digitalWrite(led, HIGH);
  }
  else
  {
    digitalWrite(led, LOW);
  }
  // Lecture et affectation du signal NUMERIQUE du capteur
  analogVal = analogRead(analogPin);
  Serial.println(analogVal);
  delay(100);
}

Spécifications de montage :

Ao= Signal Analogique

Do= Signal Numérique

Gnd : Ground ( Masse )

Vcc = Alim +3.3V à +5.5V

Angle de détection : 60 °

Longueur d'onde : 760 nm à 1100 nm ( IR )


Projet 6 : Détecteur à LED d'humidité du sol

Objectif : "Indicateur à LED du niveau d'eau dans une plante "

 

 Composants spécifiques :

 

3 LED R,J,V

3 résistances 220 Ohm

Sonde d'humidité

 

Fonctions spécifiques vues :

 

 

 Extensions possibles :

" Une pompe ( moteur) est activée lorsque le degré d'humidité est trop faible "

 


Projet 7 : Capteur de force ( poids )

Objectif : L'intensité lumineuse varie en fonction de la force exercée sur le capteur.

Composants spécifiques :

  • 3 LED R,J, V
  • 3 résistances 220 Ohm
  • FSR 402 : Force Sensing Resistor

Fonctions spécifiques vues :

 luminosite_led = map(lecture_FSR, 0, 1023, 0, 255); Extensions possibles :

" Le feu rouge passe au vert lorsque la voiture exerce un poids sur la route "

 La fréquence d'un son peut varier: instrument de musique  

Le CODE avec buzzer ou LED

int capteur_force = 0;// FSR branché sur pin Analog 0, AO
int buzzer = 3;// connecter le buzzer sur pin 3 (pin PWM)
int lecture_FSR; // Lecture analogique de la tension du pont diviseur du capteur FSR
int freq_buzzer ;

void setup(void) {
 Serial.begin(9600);// Envoi de message de déboggage sur connexion série                     
  pinMode(buzzer, OUTPUT);
}
void loop(void) {
  lecture_FSR = analogRead(capteur_force);
  Serial.print("Capteur de Force = ");
  Serial.println(lecture_FSR);
    // Map convertit la valeur analogique lue (0-800)
  // en une valeur utilisable par analogWrite (0,20000 Hz).
   freq_buzzer = map(lecture_FSR, 0,800, 0, 20000);

// si aucune force , aucun son 

// Ecrire sur le Buzzer la valeur décimal freq_buzzer (en fonction de la pression)
  analogWrite(buzzer, freq_buzzer);
  delay(500);
  }

Plage de mesure: 100 g à 2 kg


Applications: détection de présence, d'objets ...


Durée de vie: 10 millions de cycles


Epaisseur : 0,46 mm


Dimensions: 56 x Ø19 mm

 



Projet 8: Arrosage en fonction du taux d'humidité

Objectif : " Une pompe ( moteur) est activée lorsque le degré d'humidité est trop faible "

 

Composants spécifiques :

Fonctions spécifiques vues :

#include <dht.h>
dht DHT;
#define DHT11_PIN 7

Le code....

#include <dht.h>
#define dataPin 7 //Defini le pin auquel est relie le capteur
dht DHT; // creation de l'objet DHT
void setup() {
  Serial.begin(9600);
}
void loop() {
  int readData = DHT.read11(dataPin); // lit la valeur sur la sortie du capteur
  float t = DHT.temperature; // obtient la valeur de la temperature
  float h = DHT.humidity; // obtient la valeur de l'humidite
  // Affichage des resultats sur le moniteur
  Serial.print("La Temperature est de = ");
  Serial.print(t);
  Serial.print(" *C ");
  Serial.print("    Le taux d'Humidite est  = ");
  Serial.print(h);
  Serial.println(" % ");
 
  delay(2000); // attente de 2 sec pour le capteur  DHT11 à 0.5Hz
}

  • Humidity Range: 20-90% RH
  • Humidity Accuracy: ±5% RH
  • Temperature Range: 0-50 °C
  • Temperature Accuracy: ±2% °C
  • Operating Voltage: 3V to 5.5V

Projet 9 : Niveau d'eau U.S de réservoir

Objectif : " un signal sonore ou lumineux est activité lorsque le niveau d'eau est trop faible "

 

Composants spécifiques :

  • LED ou buzzer
  • Capteur d'US
  • Afficheur LCD

Fonctions spécifiques vues :

 

 

Extensions possibles :

  Le niveau est indiqué par mesure de la distance entre la surface et le capteur et une pompe peut être alors activée

La mesure du niveau peut se faire en mesurant la pression

La meure peut être envoyée par bluetooth

 

Tension de travail: 5V (DC)
Courant statique: Moins de 2 mA.
Signal de sortie: signal de fréquence électrique, niveau élevé 5V, faible niveau 0V.
Angle de capteur: pas plus de 15 degrés.
Distance de détection: 2cm-450cm.
Haute Précision: Jusqu'à 0.3cm
Signal de déclenchement d'entrée: impulsion 10us TTL
Echo Signal: sortie TTL Signal PWL
Mode de connexion: VCC Trig (T)  Echo (R)  GND


Projet 10 : Radar sonore de  recul ( voiture )

Objectif : " un signal sonore( fréquence )  ou lumineux ( clignotement ) est activité en fonction de la distance entre l'émetteur et l'obstacle"

Composants spécifiques :

  • LED ou buzzer
  • Capteur d'US

Fonctions spécifiques vues :

 

 

Extensions possibles :

Clignotement et continu ou bip discontinu et continu.

 


Projet 11 : Télémètre US

Objectif : " La distance entre l'émetteur et l'obstacle est affichée sur le Moniteur ou l'écran LCD  "

Composants spécifiques :

  • Capteur d'US HC SR004
  • Moniteur

Fonctions spécifiques vues :

 

 

Extensions possibles :

Affichage de message " attention " si la distance est trop faible ( marge d'erreur du capteur pris alors en compte )

 



Projet 12 : Télémètre et Afficheur LCD

Objectif : " La distance entre l'émetteur et l'obstacle est affichée sur  l'écran LCD  "

Composants spécifiques :

  • Capteur d'US
  • Ecran LCD 2*8

Fonctions spécifiques vues :

 LiquidCrystal monEcran (RS, E, d4, d5, d6, d7);

lcd.begin(cols, rows)

 

Extensions possibles :

Affichage de message " attention " si la distance est trop faible ( marge d'erreur du capteur pris alors en compte )

 


Projet 13 : Mesure d'oscillation d'un pendule à l'aide d'un capteur de flexion

Objectif : " La luminosité de la LED varie avec la flexion du capteur de force "

 

Composants spécifiques :

 

  • Capteur flex
  • LEd

 

Fonctions spécifiques vues :

Extensions possibles :

Un gant musical : la flexion fait varier la fréquence de la note

Spécifications techniques

Capteur de flexion souple résistif.
La résistance augmente lorsque l'angle de flexion du capteur augmente. Il faut éviter de plier la base du capteur.

Résistance au repos: 25 kΩ
Tolérance: ±30 %
Variation: 45 à 125 kΩ
Puissance: 0,5 W
Durée de vie: 1 million de cycles
Dimensions: 74 x 6 x 0,43 mm

int capteur_force = 0; // FSR branché sur pin Analog 0
int led = 3; // connecter LED rouge sur pin 3 (pin PWM)
int lecture_FSR;  // Lecture analogique de la tension du pont diviseur du capteur FSR
int luminosite_led;
void setup() {

Serial.begin(9600); // Envoi de message de déboggage sur connexion série                     
pinMode(led, OUTPUT);
}
void loop() {
  lecture_FSR = analogRead(capteur_force);
  Serial.print("Capteur de Force = ");
  Serial.println(lecture_FSR);
    // map convertit la valeur analogique lue (0-1023)
  // en une valeur utilisable par analogWrite (0-255).
    luminosite_led = map(lecture_FSR, 0, 1023, 0, 255);
  // Ecrire sur la lLED la valeur décimal luminosite_LED (en fonction de la pression)
  analogWrite(led, luminosite_led);
  delay(100);
  }


Projet 14 : Gant musical

Objectif :  la flexion de chaque  doigt permet d'émettre une fréquence ( note ) , l'amplitude de la flexion permet de varier l'amplitude ou vibrato ( interférence )

Composants spécifiques :

  • Capteur de force linéaire
  • buzzer

Fonctions spécifiques vues :

 

Extensions possibles :

 


Projet 15  : Détecteur de pluie avec fermeture de volet

Objectif : " Les volets se ferment lorsque la pluie est détectée  "

Composants spécifiques :

  • Capteur de pluie
  • Moteur ou 2,3 LED

Fonctions spécifiques vues :

Aucune

 

Extensions possibles : Essuie-glace

 


Code avec 3 LED

int valCapteur = 0;
void setup() {
Serial.begin(9600);
pinMode(10,OUTPUT);// led Verte branchée sur l entree 10
pinMode(11,OUTPUT);// led Jaune branchée sur l entree 11
pinMode(12,OUTPUT);// led Rouge branchée sur l entree 12
}
void loop() {
  valCapteur =analogRead(A0);// lecture de la sortie analogique AO du capteur de pluie
  Serial.println( valCapteur); // Affichage au moniteur ;
  if (valCapteur < 400) // SI humide la led VERTE s'allume
  {
    digitalWrite(10,HIGH);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
  }
else if (valCapteur >= 400 && valCapteur < 800)
  // si relativement sec led jaune allumée
{  
    digitalWrite(10,LOW);
    digitalWrite(11,HIGH);
    digitalWrite(12,LOW);
}
else { // si SEC led rouge allumée
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,HIGH);
}
  delay(500);
}


Projet 16 : Capteur PIR de mouvement et alerte

Objectif : "Une alarme sonore et visuelle se déclenche lorsqu'un mouvement est détecté  "

Composants spécifiques :

  • Capteur Pyroélectrique InfraRouge
  • LED
  • Buzzer

Fonctions spécifiques vues :

 

Extensions possibles : Essuie-glace

https://knowledge.parcours-performance.com/detecteur-de-mouvement-de-luminosite-arduino-affichage-lcd/



Projet 17 : Fréquencemètre cardiaque

Objectif : "Détermination des battements cardiaques par émission  IR et réception par un phototransistor au travers du doigt  "

Composants spécifiques :

  • Capteur  InfraRouge KY 039
  • Moniteur

Fonctions spécifiques vues :

 

 

Extensions possibles :


Projet 18 : Détecteur IR d'obstacles

Objectif : "Détection d'obstacles pour robot

Composants spécifiques :

  • Emetteur  InfraRouge KY 032
  • Moteur

Fonctions spécifiques vues :

Extensions possibles :

http://tiptopboards.free.fr/arduino_forum/viewtopic.php?f=2&t=8

https://tkkrlab.nl/wiki/Arduino_KY-032_Obstacle_avoidance_sensor_module

Specifications

  • Working voltage: DC 3.3V-5V
  • Working current: I= 20mA
  • Operating temperature: -10 °C à 50°C
  • Distance de détection : de 2 à 40cm
  • IO Interface: 4-wire interfaces (-Gnd/ +Vcc/ S / EN)
  • Signal de sortie: TTL level (0 si obstacle, 1 sinon )
  • Adjustment : résistance réglable
  • Effective angle: 35 °
  • Dim: 28mm * 23mm

PADLET  RESSOURCES ARDUINO

Fait avec Padlet

Pinterest Perso Collection