Table des matières:

Tutoriel facile : Capteurs Flex avec Arduino : 4 étapes
Tutoriel facile : Capteurs Flex avec Arduino : 4 étapes

Vidéo: Tutoriel facile : Capteurs Flex avec Arduino : 4 étapes

Vidéo: Tutoriel facile : Capteurs Flex avec Arduino : 4 étapes
Vidéo: Beyond the Basics: Automatic Gatekeeper With IR Sensor And ChatGPT Generated Arduino Code 2024, Novembre
Anonim
Image
Image

Les capteurs Flex sont cool !

Je les utilise tout le temps dans mes projets de robotique, et j'ai pensé à faire un petit tutoriel simple pour vous familiariser avec ces petites bandes flexibles. Parlons de ce qu'est un capteur flexible et de son fonctionnement, comment en connecter un à Arduino, comment écrire du code pour celui-ci, et enfin, comment le tester et l'implémenter avec succès dans votre projet. Maintenant, je sais que certains d'entre vous ne sont pas des lecteurs avides, et certains aimeraient le voir en action, dans ce cas, regardez la vidéo du didacticiel complet pour le capteur flexible en action à l'intérieur de l'Ironman Repulsor que j'ai fabriqué.

Étape 1: Qu'est-ce qu'un capteur Flex et comment fonctionne-t-il

Qu'est-ce qu'un capteur Flex et comment ça marche
Qu'est-ce qu'un capteur Flex et comment ça marche
Qu'est-ce qu'un capteur Flex et comment ça marche
Qu'est-ce qu'un capteur Flex et comment ça marche

Les capteurs Flex ont l'air compliqués, mais il ne s'agit en fait que d'une bande caoutchouteuse conductrice entre 2 plaqués de métal. Ouais, c'est ça !

La façon dont cela fonctionne est, lorsque le capteur n'est pas plié (neutre), la bande caoutchouteuse est solide et épaisse, elle est donc conductrice de très peu de courant entre les deux plaques, comme indiqué sur le croquis, mais lorsque vous la pliez, la bande se propage et laisse passer plus de courant, et ce courant est détecté et donc la quantité de flex est renvoyée au système.

Simple, hein ? Connectons-le.

Étape 2: connexion à Arduino

Connexion à Arduino
Connexion à Arduino
Connexion à Arduino
Connexion à Arduino
Connexion à Arduino
Connexion à Arduino

Il y a 2 broches sur le capteur flex, l'une d'entre elles est connectée à 3,3 V ou 5 V sur l'arduino, pour l'alimentation, et l'autre est connectée à la terre. Mais il y a plus - la connexion à la terre est divisée et un fil va à votre broche d'entrée arduino, dans mon Arduino uno ici, c'est A1. La partie importante est qu'il y a une résistance entre la broche A1 et la terre. La valeur de la résistance déterminera la sensibilité de votre capteur flexible. Une résistance de 1K est un bon point de départ, mais vous pouvez jouer avec les valeurs pour obtenir la sensibilité dont vous avez besoin.

Terminé. Voyons le croquis et testons notre flex dans l'Ironman Repulsor.

Étape 3: Le code

Le code
Le code

Le code suivant provient de Sparkfun, mais peut être modifié:

/****************************************************** *******************************Flex_Sensor_Example.ino Exemple de croquis pour les capteurs flex de SparkFun (https://www.sparkfun.com/products /10264) Jim Lindblom @ SparkFun Electronics 28 avril 2016

Créez un circuit diviseur de tension combinant un capteur flexible avec une résistance de 47k. - La résistance doit se connecter de A1 à GND. - Le capteur flexible doit se connecter de A1 à 3,3 V À mesure que la résistance du capteur flexible augmente (ce qui signifie qu'il est plié), la tension sur A1 devrait diminuer.

Spécificités de l'environnement de développement: Arduino 1.6.7 ****************************************** ************************************

/ const int FLEX_PIN = A1;

// Broche connectée à la sortie du diviseur de tension

// Mesurez la tension à 5V et la résistance réelle de votre

// résistance 47k, et entrez-les ci-dessous: const float VCC = 4,98;

// Tension mesurée de la ligne Ardunio 5V const float R_DIV = 47500.0;

// Résistance mesurée de la résistance 3.3k

// Téléchargez le code, puis essayez d'ajuster ces valeurs à plus

// calcule avec précision le degré de courbure. const float STRAIGHT_RESISTANCE = 37300.0;

// résistance quand droite const float BEND_RESISTANCE = 90000.0;

// résistance à 90 degrés

void setup()

{ Serial.begin(9600);

pinMode(FLEX_PIN, INPUT); }

boucle vide()

{ // Lire l'ADC et calculer la tension et la résistance à partir de celui-ci

int flexADC = analogRead(FLEX_PIN);

float flexV = flexADC * VCC / 1023.0;

float flexR = R_DIV * (VCC / flexV - 1,0);

Serial.println("Résistance: " + String(flexR) + " ohms");

// Utiliser la résistance calculée pour estimer la valeur du capteur

// angle de pliage:

angle flottant = map(flexR, STRAIGHT_RESISTANCE, BEND_RESISTANCE, 0, 90,0); Serial.println("Bend: " + String(angle) + " degrés");

Serial.println();

retard (500); }

Étape 4: Tester

Test
Test

Lors des tests, le capteur de flexion a produit des résultats impressionnants. Tu peux le voir ici

J'espère que vous avez apprécié ce tutoriel. Dirigez-vous vers les Fungiers. Il y a beaucoup d'Arduino et d'autres projets que vous apprécierez:)

Conseillé: