Uso del sensor de flexibilidad con Arduino Uno

Tengo que reconocer que cuando vi por primera vez el sensor de flexibilidad en mi primer kit de arduino hace ya unos ayeres no sabia que era, solo vi un pedazo de plástico , raro, pero unos meses despues me entere que era un sensor de Flexibilidad:

ardflex-02

y para los que apenas comienzan con este sensor, aqui un codigo que  con un flex sensor y con  un pequeño circuito con leds  nos indica el nivel de flexión del mismo.

/*
Programa para recibir datos del sensor de flexibilidad
y mostrar el grado de flexion con 10 leds.
*/
// Pin donde se encuentra el sensor en la entrada analoga
int flexPin = 0;
void setup() {
  // Decimos los pines de salida para los 10 leds
  for (int i = 4; i <= 13; i++) {
    pinMode(i, OUTPUT);
  }
}
// Funcion para prender el nivel con los leds
void blink(int ledActive, int onTime, int offTime) {
  // Se enciende el led y dura solo una fraccion de segundo
  digitalWrite(ledActive, HIGH);
  delay(onTime);
  // Se vuelve a apagar el led
  digitalWrite(ledActive, LOW);
  delay(offTime);
}
void loop() {
  // Se apagan todas las salidas de los leds
  for (int i = 4; i <= 13; i++) {
    digitalWrite(i, LOW);
  }
  // Cambiamos la entrada del sensor por un numero entre 4 y 13
  int lightLevel = map(analogRead(flexPin), 130, 275, 4, 13);
  // Nos aseguramos que tengamos un valor entre 4 y 13
  int ledOn = constrain(lightLevel, 4, 13);
  // Mandamos cual led se enciende a la funcion
  blink(ledOn, 10, 1);
}
una practica sencilla, pero que muestra muy bien el uso del sensor, esperemos que alguien encuentre un mejor uso al mismo:

lo vi en http://ramon-gzz.blogspot.mx/2012/04/arduino-uno-y-flex-sensor.html

Acerca del Autor