Taula de continguts:

Tutorial fàcil: Sensors flexibles amb Arduino: 4 passos
Tutorial fàcil: Sensors flexibles amb Arduino: 4 passos

Vídeo: Tutorial fàcil: Sensors flexibles amb Arduino: 4 passos

Vídeo: Tutorial fàcil: Sensors flexibles amb Arduino: 4 passos
Vídeo: ✅ Construcción de Dron Casero explicado Paso a Paso, Barato y Fácil MD1 - homemade drone 2024, Juliol
Anonim
Image
Image

Els sensors flex són genials!

Els faig servir tot el temps en els meus projectes de robòtica i he pensat a fer uns petits tutorials senzills per familiaritzar-vos amb aquestes tires petites. Parlem de què és i com funciona un sensor de flexió, de com connectar-ne un a Arduino, de com escriure-hi codi i, finalment, de com provar-lo i implementar-lo amb èxit al vostre projecte. Ara, sé que alguns de vosaltres no sou lectors àvids i a alguns els agradaria veure-ho en acció; en aquest cas, mireu el vídeo del tutorial complet del sensor de flexió en acció dins del Ironman Repulsor que he creat.

Pas 1: què és un sensor de flexió i com funciona

Què és un sensor Flex i com funciona
Què és un sensor Flex i com funciona
Què és un sensor Flex i com funciona
Què és un sensor Flex i com funciona

Els sensors de flexió semblen complicats, però en realitat és només una tira conductiva de goma entre 2 xapats de metall. Sí, ja està!

La manera com funciona és que, quan el sensor no està doblegat (neutre), la tira de goma és sòlida i gruixuda, de manera que és molt poc corrent conductora entre les dues plaques, tal com es mostra a l’esbós, però quan la doblegueu, la tira s’estén i permet transmetre més corrent, i aquest corrent es detecta i, per tant, la quantitat de flexió es retroalimenta al sistema.

Senzill, eh? Connectem-ho.

Pas 2: Connexió a Arduino

Connexió a Arduino
Connexió a Arduino
Connexió a Arduino
Connexió a Arduino
Connexió a Arduino
Connexió a Arduino

Hi ha 2 pins al sensor de flexió, un d’ells es connecta a 3,3V o 5V a l’arduino, per alimentar-se, i l’altre està connectat a terra. Però hi ha més: la connexió de terra està dividida i un cable va al vostre pin d'entrada arduino, al meu Arduino uno aquí, és A1. La part important és que hi ha una resistència entre el pin A1 i el terra. El valor de la resistència determinarà la sensibilitat del sensor de flexió. Una resistència de 1 K és un bon punt de partida, però podeu jugar amb els valors per aconseguir la sensibilitat que necessiteu.

Fet. Vegem l’esbós i provem la flexió a l’Ironman Repulsor.

Pas 3: el codi

El codi
El codi

El codi següent és de Sparkfun, però es pot modificar:

/ ************************************************** ***************************** Flex_Sensor_Example.ino Esbós d'exemple per als sensors flex de SparkFun (https://www.sparkfun.com/products / 10264) Jim Lindblom @ SparkFun Electronics 28 d’abril de 2016

Creeu un circuit divisor de tensió combinant un sensor de flexió amb una resistència de 47 k. - La resistència hauria de connectar-se d'A1 a GND. - El sensor de flexió s’hauria de connectar d’A1 a 3,3 V A mesura que augmenta la resistència del sensor de flexió (és a dir, s’està doblegant), el voltatge a A1 hauria de disminuir.

Especificacions de l'entorn de desenvolupament: Arduino 1.6.7 ******************************************* *************************************

/ const int FLEX_PIN = A1;

// Pin connectat a la sortida del divisor de tensió

// Mesureu el voltatge a 5V i la resistència real del vostre

// 47k resistència i introduïu-los a continuació: const float VCC = 4,98;

// Voltatge mesurat de la línia Ardunio 5V constant flotant R_DIV = 47500,0;

// Resistència mesurada de 3,3 k de resistència

// Pengeu el codi i, a continuació, intenteu ajustar aquests valors a més

// calcular amb precisió el grau de corba. const float STRAIGHT_RESISTANCE = 37300,0;

// resistència quan consta flotant recta BEND_RESISTANCE = 90000,0;

// resistència a 90 graus

configuració nul·la ()

{Serial.begin (9600);

pinMode (FLEX_PIN, INPUT); }

bucle buit ()

{// Llegiu l'ADC i calculeu-ne la tensió i la resistència

int flexADC = analogRead (FLEX_PIN);

float flexV = flexADC * VCC / 1023.0;

float flexR = R_DIV * (VCC / flexV - 1.0);

Serial.println ("Resistència:" + Corda (flexR) + "ohms");

// Utilitzeu la resistència calculada per estimar la del sensor

// angle de flexió:

angle flotant = mapa (flexR, STRAIGHT_RESISTANCE, BEND_RESISTANCE, 0, 90,0); Serial.println ("Doblegar:" + Cadena (angle) + "graus");

Serial.println ();

retard (500); }

Pas 4: prova

Prova
Prova

En fer les proves, el sensor de flexió va produir resultats impressionants. Ho podeu veure aquí

Espero que us agradi aquest tutorial. Dirigiu-vos a Fungineers. Hi ha un munt d'Arduino i altres projectes que gaudiràs:)

Recomanat: