Capteur de force FSR02 – Senseur FSR – Arduino

Un capteur de force FSR02 (Force Sensing Resistor) permet de détecter une pression physique.

Le capteur FSR est un capteur qui répond en faisant décroitre sa résistance. Si nous n’effectuons aucune pression sur le capteur, la résistance approchera l’infini. Plus on appuie sur le capteur, plus la résistance va être petite.

Le document constructeur est disponible à cette adresse.

Caractéristiques :
Plage de mesure: 100 g à 2 kg
Applications: détection de présence, d’objets …
Durée de vie: 10 millions de cycles
Épaisseur: 0,46 mm
Dimensions: 56 x Ø19 mm

 

Le code suivant va lire la tension qu’envoie le capteur de force. En fonction de cette tension, nous allons faire varier la tension de la LED.
Donc plus on exerce une pression sur le capteur de force, plus la LED va s’allumer. Il faut faire attention à bien utiliser une sortie PWM pour la LED (interface avec le signe ~).

Dans le code, nous utilisons également la commande map.
En entrée, sur le port A0, nous récupérons une valeur qui varie entre 0 et 5V. Le CAN convertit cette plage avec 0V –> 0 et 5 V –> 1023. Nous ne pouvons pas envoyer sur la LED une valeur comprise entre 0 et 1023. Le PWM permet d’envoyer sur la LED une valeur entre 0 et 255. La commande map effectuera donc un rapport proportionnel à partir des valeurs 0 => 0 et 1023 => 255.

map(variable, ValeurMin, ValeurMax, versValeurMin, versValeurMax);

exemple :

val = map(luminosite_led, 0, 1023, 0, 255);
  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(void) {
    Serial.begin(9600); // Envoi de message de déboggage sur connexion série                      
    pinMode(led, OUTPUT);
  }

  void loop(void) {
    lecture_FSR = analogRead(capteur_force);
    Serial.print("Capteur de Force = ");
    Serial.println(lecture_FSR);
    
    // Nous devons convertir la valeur analogique lue (0-1023) 
    // en une valeur utilisable par analogWrite (0-255).
    // C'est ce que fait l'instruction map!
    
    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);
    
  }
Capteur de Force - FSR02

 

2 commentaires

  1. bonjour,

    peut on brancher sur une carte Arduino uno en même temps ce type de capteur de force et un gyroscope electronique pour avoir des mesures d’angulation et de force ?

Rejoignez la conversation

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.