Spisu treści:

Prosty samouczek: Czujniki Flex z Arduino: 4 kroki
Prosty samouczek: Czujniki Flex z Arduino: 4 kroki

Wideo: Prosty samouczek: Czujniki Flex z Arduino: 4 kroki

Wideo: Prosty samouczek: Czujniki Flex z Arduino: 4 kroki
Wideo: Kurs Arduino #4: DHT11/DHT22 - Czujnik temperatury i wilgotności + Stacja pogodowa 2024, Listopad
Anonim
Image
Image

Czujniki Flex są fajne!

Używam ich przez cały czas w moich projektach robotyki i pomyślałem o zrobieniu prostych samouczków, aby zapoznać was z tymi giętkimi małymi paskami. Porozmawiajmy o tym, czym jest czujnik flex i jak działa, jak podłączyć go do Arduino, jak napisać dla niego kod i na koniec, jak go przetestować i pomyślnie zaimplementować w swoim projekcie. Teraz wiem, że niektórzy z was nie są zapalonymi czytelnikami, a niektórzy chcieliby zobaczyć to w akcji, w takim przypadku obejrzyj wideo pełnego samouczka dotyczącego czujnika flex w akcji w Ironman Repulsor, który zrobiłem.

Krok 1: Co to jest czujnik Flex i jak działa?

Co to jest czujnik Flex i jak działa?
Co to jest czujnik Flex i jak działa?
Co to jest czujnik Flex i jak działa?
Co to jest czujnik Flex i jak działa?

Czujniki Flex wyglądają na skomplikowane, ale w rzeczywistości jest to tylko przewodzący gumowy pasek między dwoma metalowymi płytkami. Tak, to jest to!

Działa to tak, że gdy czujnik nie jest wygięty (neutralny), gumowaty pasek jest solidny i gruby, więc przewodzi bardzo mało prądu między dwiema płytkami, jak pokazano na szkicu, ale gdy go zginasz, pasek rozchodzi się i przepuszcza więcej prądu, a prąd ten jest wykrywany, a zatem wielkość flexu jest zwracana do systemu.

Proste, co? Połączmy to.

Krok 2: Łączenie z Arduino

Łączenie z Arduino
Łączenie z Arduino
Łączenie z Arduino
Łączenie z Arduino
Łączenie z Arduino
Łączenie z Arduino

Na czujniku flex są 2 piny, jeden z nich jest podłączony do 3,3 V lub 5 V na arduino, do zasilania, a drugi jest podłączony do masy. Ale jest coś więcej - połączenie masy jest rozdzielone i jeden przewód idzie do twojego pinu wejściowego arduino, w moim Arduino uno tutaj jest to A1. Ważną częścią jest to, że pomiędzy pinem A1 a masą znajduje się rezystor. Wartość rezystora określi czułość czujnika flex. Rezystor 1K to dobry punkt wyjścia, ale możesz bawić się wartościami, aby uzyskać potrzebną czułość.

Gotowe. Zobaczmy szkic i przetestujmy naszą elastyczność w Ironman Repulsor.

Krok 3: Kodeks

Kod
Kod

Poniższy kod pochodzi ze Sparkfun, ale można go zmodyfikować:

/************************************************** *****************************Flex_Sensor_Example.ino Przykładowy szkic czujników Flex SparkFun (https://www.sparkfun.com/products /10264) Jim Lindblom @ SparkFun Electronics 28 kwietnia 2016

Utwórz obwód dzielnika napięcia łączący czujnik flex z rezystorem 47k. - Rezystor powinien łączyć z A1 do GND. - Czujnik zginania powinien łączyć się z A1 do 3,3V W miarę wzrostu rezystancji czujnika zginania (czyli zginania), napięcie na A1 powinno spadać.

Specyfika środowiska programistycznego: Arduino 1.6.7 ****************************************** ***********************************

/ const int FLEX_PIN = A1;

// Pin podłączony do wyjścia dzielnika napięcia

// Zmierz napięcie przy 5V i rzeczywistą rezystancję twojego

// rezystor 47k i wpisz je poniżej: const float VCC = 4,98;

// Zmierzone napięcie linii Ardunio 5V const float R_DIV = 47500.0;

// Zmierzona rezystancja rezystora 3,3k

// Prześlij kod, a następnie spróbuj dostosować te wartości do więcej

// dokładnie obliczyć stopień zagięcia. const float STRAIGHT_RESISTANCE = 37300.0;

// opór przy prostej const float BEND_RESISTANCE = 90000.0;

// opór przy 90 st.

pusta konfiguracja()

{ Szeregowy.początek(9600);

pinMode(FLEX_PIN, WEJŚCIE); }

pusta pętla()

{ // Odczytaj ADC i oblicz z niego napięcie i rezystancję

int flexADC = analogRead(FLEX_PIN);

float flexV = flexADC * VCC / 1023.0;

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

Serial.println("Rezystancja: " + String(flexR) + " omy");

// Użyj obliczonej rezystancji do oszacowania czujnika

// kąt zagięcia:

float angle = map(flexR, STRAIGHT_RESISTANCE, BEND_RESISTANCE, 0, 90.0); Serial.println("Zgięcie: " + String(kąt) + " stopnie");

Serial.println();

opóźnienie (500); }

Krok 4: Test

Test
Test

Podczas testów czujnik flex dał niesamowite wyniki. Możesz to zobaczyć tutaj

Mam nadzieję, że podobał wam się ten samouczek. Udaj się do Fungineers. Jest wiele Arduino i innych projektów, które Ci się spodobają:)

Zalecana: