Inhoudsopgave:

Eenvoudige zelfstudie: Flex-sensoren met Arduino - Ajarnpa
Eenvoudige zelfstudie: Flex-sensoren met Arduino - Ajarnpa

Video: Eenvoudige zelfstudie: Flex-sensoren met Arduino - Ajarnpa

Video: Eenvoudige zelfstudie: Flex-sensoren met Arduino - Ajarnpa
Video: İPhone X Face ID Repair.Face ID Fix . Verwissel proximity sensor flex. 2024, Juli-
Anonim
Image
Image

Flexsensoren zijn cool!

Ik gebruik ze de hele tijd in mijn Robotica-projecten, en ik dacht eraan om een paar eenvoudige tutorials te maken om jullie vertrouwd te maken met deze buigzame kleine strips. Laten we het hebben over wat een flexsensor is en hoe deze werkt, hoe u er een aansluit op Arduino, hoe u er code voor schrijft en tot slot hoe u deze test en met succes in uw project implementeert. Nu, ik weet dat sommigen van jullie geen enthousiaste lezers zijn, en sommigen zouden het graag in actie willen zien. Bekijk in dat geval de video van de volledige tutorial voor de flexsensor in actie in de Ironman Repulsor die ik heb gemaakt.

Stap 1: Wat is een Flex-sensor en hoe werkt het?

Wat is een flexsensor en hoe werkt het?
Wat is een flexsensor en hoe werkt het?
Wat is een flexsensor en hoe werkt het?
Wat is een flexsensor en hoe werkt het?

Flex-sensoren zien er ingewikkeld uit, maar het is eigenlijk gewoon een geleidende rubberachtige strook tussen 2 metalen platen. Ja, dat is het!

De manier waarop het werkt, is dat wanneer de sensor niet gebogen is (neutraal), de rubberachtige strip stevig en dik is, dus hij geleidt heel weinig stroom tussen de twee platen, zoals weergegeven in de schets, maar wanneer je hem buigt, zal de strip verspreidt zich en laat meer stroom door, en deze stroom wordt gedetecteerd en dus wordt de hoeveelheid flex teruggevoerd naar het systeem.

Simpel, hè? Laten we het verbinden.

Stap 2: Verbinding maken met Arduino

Verbinding maken met Arduino
Verbinding maken met Arduino
Verbinding maken met Arduino
Verbinding maken met Arduino
Verbinding maken met Arduino
Verbinding maken met Arduino

Er zijn 2 pinnen op de flex-sensor, een daarvan is verbonden met 3,3V of 5V op de Arduino, voor stroom, en de andere is verbonden met aarde. Maar er is meer - de aardverbinding is gesplitst en één draad gaat naar je Arduino-ingangspin, in mijn Arduino uno hier is het A1. Het belangrijkste is dat er een weerstand tussen de A1-pin en de aarde zit. De weerstandswaarde bepaalt hoe gevoelig uw flexsensor is. Een weerstand van 1K is een goed uitgangspunt, maar je kunt spelen met de waarden om de gevoeligheid te bereiken die je nodig hebt.

Gedaan. Laten we de schets bekijken en onze flex testen in de Ironman Repulsor.

Stap 3: De code

De code
De code

De volgende code is van Sparkfun, maar kan worden gewijzigd:

/************************************************** ******************************Flex_Sensor_Example.ino Voorbeeldschets voor de flexsensoren van SparkFun (https://www.sparkfun.com/products /10264) Jim Lindblom @ SparkFun Electronics 28 april 2016

Maak een spanningsdelercircuit door een flexsensor te combineren met een 47k-weerstand. - De weerstand moet van A1 naar GND worden aangesloten. - De flex-sensor moet worden aangesloten van A1 naar 3,3V. Naarmate de weerstand van de flex-sensor toeneemt (wat betekent dat deze wordt gebogen), zou de spanning op A1 moeten afnemen.

Bijzonderheden ontwikkelomgeving: Arduino 1.6.7 ***************************************** ***********************************

/ const int FLEX_PIN = A1;

// Pin aangesloten op spanningsdeleruitgang

// Meet de spanning bij 5V en de werkelijke weerstand van uw

// 47k weerstand, en voer ze hieronder in: const float VCC = 4.98;

// Gemeten spanning van Ardunio 5V lijn const float R_DIV = 47500.0;

// Gemeten weerstand van 3.3k weerstand

// Upload de code en probeer deze waarden vervolgens aan te passen naar meer

// bereken nauwkeurig de buiggraad. const float STRAIGHT_RESISTANCE = 37300.0;

// weerstand wanneer rechte const float BEND_RESISTANCE = 90000.0;

// weerstand bij 90 graden

ongeldige setup()

{ Serieel.begin(9600);

pinMode (FLEX_PIN, INPUT); }

lege lus()

{// Lees de ADC en bereken er spanning en weerstand van

int flexADC = analoog lezen (FLEX_PIN);

float flexV = flexADC * VCC / 1023,0;

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

Serial.println ("Weerstand: " + String (flexR) + " ohm");

// Gebruik de berekende weerstand om de sensor te schatten

// buighoek:

zweefhoek = kaart (flexR, STRAIGHT_RESISTANCE, BEND_RESISTANCE, 0, 90.0); Serial.println ("Bend:" + String (hoek) + "graden");

Serieel.println();

vertraging (500); }

Stap 4: Testen

Toets
Toets

Bij het testen leverde de flexsensor geweldige resultaten op. Je kunt het hier zien

Ik hoop dat jullie deze tutorial leuk vonden. Ga naar Fungineers. Er zijn veel Arduino en andere projecten waar je van zult genieten:)

Aanbevolen: