Qu'est ce qu'un capteur de force ? Comment l'utiliser dans votre projet ?
Introduction
Le capteur de force permet de mesure une contrainte faite par l’utilisateur ou un objet et le transmet à la carte arduino sous forme de tension. Il est composé d’une cellule de force. La cellule de force est une jauge de contrainte permettant de mesurer un effort.
Elle contient une resistance qui décroît en fonction de l’effort fourni. De cette façon l’effort peut-être calculé par rapport à la valeur de référence de la résistance.
Le capteur de force peut lire une valeur allant de 0 newton à 10 newtons, ce qui corresponds à 1kg. Vous pourrez retrouver des capteurs allant jusqu’à 2-3 kg sur arduino.
Certain capteurs possèdent en plus un module de conversion pour amplifier le signal et le convertir en une valeur numérique. Ces capteurs ce branches sur une borne digital numérique de la carte Arduino.
Vcc : Doit être branche au 5v de votre carte Arduino
GND & Signal : On connecte cette broche à une résistance de 9.1 kilo-ohms, à une borne analogique et la masse
Afficher valeur sur le moniteur série
On va maintenant voir comment afficher les valeurs de force sur le moniteur série en newton-mètre.
#define capteur_force A0 // broche capteur de forcevoidsetup(){Serial.begin(9600);// Initialisation du moniteur serie}voidloop(){int lecture_valeur =analogRead(capteur_force);// on lit la valeur venant du capteur de force// Affichage de la valeur sur le moniteur serieSerial.print("Valeur du capteur : ");Serial.print(lecture_valeur);Serial.println(" milli Newton metre");delay(100);// pause pour attendre la valeur suivante}
Voici le résultat sur le moniteur série :
Mesurer la force avec des LEDS
On va maintenant voir comment allumer des leds en fonctions de la force en newton-mètre.
Voici les valeurs pour lesquels les leds vont s’allumer:
Couleur Led
Valeur en Newton-mètre
LED Blanche
200 >
LED Bleu
450 >
LED Verte
550 >
LED Jaune
650 >
LED Orange
800 >
LED Rouge
900 >
#define capteur_force A0 // broche capteur de force// on definit les leds
#define led_blanche 2
#define led_bleu 3
#define led_verte 4
#define led_jaune 5
#define led_orange 6
#define led_rouge 7voidsetup(){// on definit les leds en sortiepinMode(led_blanche, OUTPUT);pinMode(led_bleu, OUTPUT);pinMode(led_verte, OUTPUT);pinMode(led_jaune, OUTPUT);pinMode(led_orange, OUTPUT);pinMode(led_rouge, OUTPUT);}voidloop(){int lecture_valeur =analogRead(capteur_force);// on lit la valeur venant du capteur de force// si la valeur est supérieur à 2 newton-mètre on allume la led blancheif(lecture_valeur >200){digitalWrite(led_blanche, HIGH);}elsedigitalWrite(led_blanche, LOW);// On éteint la led si ce n'est pas le cas// On allume la led bleu si la valeur est supérieur à 4.5 Newton mètreif(lecture_valeur >450){digitalWrite(led_bleu, HIGH);}elsedigitalWrite(led_bleu, LOW);// on allume la led verte si la valeur est supérieur à 5.5 Newton-mètre if(lecture_valeur >550){digitalWrite(led_verte, HIGH);}elsedigitalWrite(led_verte, LOW);// On allume la led jaune si la valeur est supérieur à 6.5 newton mètre if(lecture_valeur >650){digitalWrite(led_jaune, HIGH);}elsedigitalWrite(led_jaune, LOW);// On allume la led orange si la valeur est supérieur à 8 Newton-mètreif(lecture_valeur >800){digitalWrite(led_orange, HIGH);}elsedigitalWrite(led_orange, LOW);// On allume la led rouge si la valeur est supérieur à 9 Newton-mètreif(lecture_valeur >900){digitalWrite(led_rouge, HIGH);}elsedigitalWrite(led_rouge, LOW);}
Merci de votre confiance.Vous recevrez dans votre boîte mail l'extrait dès qu'il sera terminé !