ARDUINO 334265-633524 Flex Long érzékelő
Bevezetés
Annyi időt töltünk azzal, hogy kevésbé mechanikusan érzékeljük a dolgokat, hogy könnyen elfelejthetjük, hogy a gyorsulásmérő nem az egyetlen alkatrész a városban. A flexibilis érzékelő azon részek közé tartozik, amelyeket a haladó felhasználók gyakran figyelmen kívül hagynak. De mi van akkor, ha ellenőrizni kell, hogy valami meghajlott-e? Mint egy ujj, vagy egy babakar. (Úgy tűnik, sok játék prototípusnak van erre igénye). Bármikor, amikor hajlítást vagy hajlítást kell észlelnie, valószínűleg egy hajlításérzékelő a megfelelő alkatrész. Különböző méretben kaphatók. A flex-érzékelő egy változtatható ellenállás, amely reagál a hajlításokra. Hajlítás nélkül körülbelül 22KΩ, 40º-ban hajlítva 180KΩ-ig. Vegye figyelembe, hogy a hajlítást csak egy irányba érzékeli a rendszer, és a leolvasás kissé ingatag lehet, így a legjobb eredményt érheti el, ha legalább 10º-os változásokat észlel. Ügyeljen arra is, hogy ne hajlítsa meg az érzékelőt az aljánál, mert nem regisztrálja magát változásként, és elszakíthatja a vezetékeket. Mindig ragasztok valami vastag deszkát az aljára, hogy ott ne hajoljon.
Bekötés, és miért
A hajlító érzékelő megváltoztatja az ellenállását hajlításkor, így mérhetjük ezt a változást az Arduino egyik analóg tűjével. Ehhez azonban szükségünk van egy fix ellenállásra (nem változik), amelyet az összehasonlításhoz használhatunk (22K-os ellenállást használunk). Ezt nevezik voltage osztó, és elosztja az 5V-ot a flex érzékelő és az ellenállás között. Az Arduino analóg olvasata egy kötettage méter. 5V-on (maximum) 1023-at mutatna, 0v-nál pedig 0-t. Így meg tudjuk mérni, hogy mennyi volttage van a flex érzékelőn az analogRead segítségével, és megvan a mi leolvasásunk.
Ennek az 5 V-nak a mennyisége, amelyet minden alkatrész kap, arányos az ellenállásával. Tehát ha a flex érzékelő és az ellenállás azonos ellenállású, akkor az 5 V egyenletesen (2.5 V) van osztva mindegyik részre. (512 analóg leolvasás) Tegyük fel, hogy az érzékelő csak 1.1K ellenállást olvasott, a 22K-os ellenállás 20-szor annyit fog felszívni az 5V-ból. Tehát a flex érzékelő csak 23 V-ot kapna. (46-os analóg leolvasás) \És ha a hajlító érzékelőt egy cső köré tekerjük, akkor a flexibilis érzékelő lehet 40K vagy ellenállás, tehát a flexibilis érzékelő 1.8-szor annyit szív fel ebből az 5V-ból, mint a 22K-os ellenállás. Tehát a flex szenzor kapna 3V-ot. (A 614 analóg leolvasása)
Kód
Az Arduino kód erre egyszerűen nem is lehetne egyszerűbb. Néhány sorozatnyomatot és késleltetést adunk hozzá, hogy könnyen lássák a leolvasásokat, de nem kell ott lenniük, ha nincs rájuk szüksége. A tesztjeim során az Arduino 512 és 614 közötti értéket kaptam. Tehát a tartomány nem a legjobb. De a map() függvény használatával ezt nagyobb tartományba konvertálhatja. int flexSensorPin = A0; //analóg pin 0
Example Kód
void setup(){ Serial.begin(9600); }void loop(){int flexSensorReading = analogRead(flexSensorPin); Serial.println(flexSensorReading) //Tesztjeim során 512 és 614 közötti értékeket kaptam az arduinón. //A map() segítségével ezt nagyobb tartományra, például 0-100-ra konvertálhatja. int flex0to100 = térkép(flexSensorReading, 512, 614, 0, 100); Serial.println(flex0to100); késleltetés(250); //csak itt, hogy lelassítsa a kimenetet a könnyebb olvasás érdekében
Dokumentumok / Források
![]() |
ARDUINO 334265-633524 Flex Long érzékelő [pdf] Felhasználói kézikönyv 334265-633524, 334265-633524 Flex Long érzékelő, Flex Long érzékelő, Flex Long, Long |