Logo ARDUINO

ARDUINO 334265-633524 Flex senzor dlouhý

ARDUINO-334265-633524-Sensor-Flex-Dlouhý produkt

Zavedení

Trávíme tolik času povídáním o snímání věcí méně mechanických, že je snadné zapomenout, že akcelerometr není jedinou částí ve městě. Flex senzor je jednou z těch částí, které pokročilí uživatelé často přehlížejí. Ale co když potřebujete zkontrolovat, zda se něco neohnulo? Jako prst nebo paži panenky. (Zdá se, že mnoho prototypů hraček má tuto potřebu). Kdykoli potřebujete detekovat flex nebo ohyb, flex senzor je pravděpodobně součástí pro vás. Dodávají se v několika různých velikostech. Flex senzor je proměnný odpor, který reaguje na ohyby. Neohnutý měří asi 22 kΩ, až 40 kΩ, když je ohnut na 180º. Všimněte si, že ohyb je detekován pouze v jednom směru a čtení může být trochu roztřesené, takže budete mít nejlepší výsledky při detekci změn alespoň o 10º. Také se ujistěte, že snímač neohýbáte na základně, protože to nezaregistruje změnu a mohlo by dojít k poškození vodičů. K jeho základně vždy přilepím nějakou tlustou desku, aby se to tam neprohýbalo.

ARDUINO-334265-633524-Sensor-Flex-Long-fig-1

Zapojit to a proč

Flex senzor mění svůj odpor, když je ohnutý, takže můžeme měřit tuto změnu pomocí jednoho z analogových pinů Arduina. Ale k tomu potřebujeme pevný rezistor (nemění se), který můžeme použít pro toto srovnání (používáme rezistor 22K). Tomu se říká svtage dělič a rozděluje 5V mezi flex senzor a rezistor. Analogové čtení na vašem Arduinu je svtage metr. Při 5V (jeho maximum) by to bylo 1023 a při 0V by to bylo 0. Můžeme tedy změřit, kolik obj.tage je na flex senzoru pomocí analogRead a máme naše čtení.

Množství těchto 5V, které dostane každý díl, je úměrné jeho odporu. Pokud tedy flex senzor a rezistor mají stejný odpor, 5V se rozdělí rovnoměrně (2.5V) na každou část. (analogové čtení 512) Jen předstírejte, že snímač četl pouze 1.1 K odporu, odpor 22 K pohltí 20krát tolik z 5V. Takže flex senzor by dostal jen 23V. (Analogový údaj 46) \A pokud otočíme flex senzor kolem trubice, flex senzor může mít 40K nebo odpor, takže flex senzor pohltí 1.8krát více z těchto 5V než 22K odpor. Takže flex senzor by dostal 3V. (Analogové čtení 614)

Kód

Arduino kód pro to prostě nemůže být jednodušší. Přidáváme k němu několik sériových výtisků a zpoždění, abyste mohli snadno vidět hodnoty, ale nemusí tam být, pokud je nepotřebujete. Při mých testech jsem na Arduinu dosahoval hodnoty mezi 512 a 614. Rozsah tedy není nejlepší. Ale pomocí funkce map() to můžete převést na větší rozsah. int flexSensorPin = A0; //analogový pin 0

Example Kód
void setup(){ Serial.begin(9600); }void loop(){int flexSensorReading = analogRead(flexSensorPin); Serial.println(flexSensorReading) //V mých testech jsem na arduinu dosahoval hodnoty mezi 512 a 614. //Pomocí map() to můžete převést na větší rozsah, například 0-100. int flex0to100 = mapa(flexSensorReading, 512, 614, 0, 100); Serial.println(flex0to100); zpoždění(250); //zde jen pro zpomalení výstupu pro snadnější čtení

Dokumenty / zdroje

ARDUINO 334265-633524 Flex senzor dlouhý [pdfUživatelská příručka
334265-633524, 334265-633524 Sensor Flex Long, Sensor Flex Long, Flex Long, Long

Reference

Zanechte komentář

Vaše emailová adresa nebude zveřejněna. Povinná pole jsou označena *