NeoPixels Bicycle Project

NeoPixels Bicycle Project © GPL3+

This project was made with the intention to create a reflexion around the effort of cyclists, made with a Hall effect sensor.

  • 616 views
  • 1 comment
  • 0 respects

Components and supplies

Apps and online services

About this project

¿Crees poder superar a un ciclista profesional?

28 de julio de 2019, Egan Bernal se convierte en el primer ciclista latinoamericano en ganar el Tour de Francia, y el deportista más joven -22 años- en conseguirlo en 110 años. Sin duda es fue un gran logro que llenó de alegría y orgullo al país. Sin embargo, esta celebración también estuvo marcada por unos comentarios desafortunados, escritos por diversas personas para desmeritar y opacar el esfuerzo de los demás ciclistas colombianos que no lograron ganar la carrera, y los cuales mostraban una evidente falta de información, por parte del público en general, relacionada a la preparación y esfuerzo que tienen que pasar los deportistas que nos representan a nivel internacional. Años enteros de dedicación, preparación, e incluso sufrimiento, que los espectadores no ven y que pasan eclipsados por los logros -o fracasos- de los deportistas.Es por ello, que con el presente proyecto buscamos que, de forma interactiva, movida y entretenida, los usuarios puedan dimensionar y concientizarse sobre el trabajo que conlleva alcanzar la meta en solo una etapa de un tour. Para lograrlo, diseñamos esta instalación a modo de competencia, donde el usuario inicia la carrera a la par que un ciclista profesional, y dependiendo de su esfuerzo y ritmo, el camino hacía la meta estará más cerca, o lejos. A medida que el usuario avanza, irá observando datos relevantes para informar las consecuencias, que tendría participar en este tour, para una personal normal, de modo que se logre apreciar y valorar los sacrificios y condiciones que deben afrontar los ciclistas en cada competencia

La instalación elaborada estaba compuesta por una bicicleta estática y un panel gráfico, en este se mostraban dos rutas: una perteneciente al usuario y otra de comparación al desempeño de una ciclista profesional. De esta manera, por medio del pedaleo que el participante ejercía en la bicicleta, las luces LED instaladas en el camino lateral izquierdo se iban encendiendo, mientras que las de la derecha estaban programadas a una velocidad promedio según el tiempo que se demoraría un ciclista profesional en recorrer la misma distancia. Visualmente las luces del ciclista pr

ofesional se mueven en promedio el triple de rápido que las del participante, ejerciendo cierto nivel de presión sobre el usuario y creando un mensaje mucho más claro de la exigencia de este deporte. Fue de suma importancia que el montaje estableciera una relación directa con el usuario por medio de la actividad física que este realizara, siendo él el encargado, no solo recibir el mensaje, sino generarlo.

Mayor información sobre el proyecto: https://www.behance.net/gallery/85255737/Ciclismo-Profesional-Estudio-6-Interaccion-

Code

Hall effect_neopixelsArduino
Most of the comments on the code are written in Spanish.
//Libreria Adafruit

#include <Adafruit_NeoPixel.h>
#ifdef __AVR__
 #include <avr/power.h> // Required for 16 MHz Adafruit Trinket
#endif

//Pin al que se encuentra conectado (analogo)

#define PIN        A1

//Nmero de luces que se encuetran conectados

#define NUMERO_LUCES 64

/*Parmetros:
 * 1. Nmero de luces
 * 2. Pin eal que se encuentra conectado
 * 3. Codigo de luz al que se somete
 * 4.  
 *   NEO_KHZ800  800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
 */                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

Adafruit_NeoPixel pixels (NUMERO_LUCES, PIN, NEO_RGB + NEO_KHZ800);

const int hallPin = 9;     // hall effect sensor out pin
int hallState = 0;         // Initial hall sensor status

int i = -1;                //Contador para las luces
int contador = 0;          //Contador del sensor Hall
int limite = 160;          //Limite para que el contador se reinicie y encienda una luz

void setup() 
{

  Serial.begin(9600);
      
  pinMode(hallPin, INPUT); // The hall effect sensor pin as an input

  #if defined(__AVR_ATtiny85__) && (F_CPU == 16000000)
  clock_prescale_set(clock_div_1);
  #endif

  //Inicializacin del strip.
   
pixels.begin(); //Inicializa el Strip Object
pixels.show();  //Apaga las luces


}

void loop()
{

  hallState = digitalRead(hallPin); // reading the state of the hall effect sensor pin

  if (hallState == LOW)             // Registra +1 cada vez que se registra un paso de un imn.
  {     
    contador++;
  } 
    if (contador == limite)         //Enciende una luz cuando el contador llega a su limite
  {
      contador = 0;
      i++;
      for (int a = 0; a <= i && a < NUMERO_LUCES; a++)
        { 
          if (a >= 0 && a < 21)                //Modifica la luz del pixel nmero 0 a 20
          {         
            pixels.setPixelColor (a, pixels.Color(255,77,77));
          }
          if (a >= 21 && a < 42)               //Modifica la luz del pixel nmero 21 a 41
          {         
            pixels.setPixelColor (a, pixels.Color(0,255,255));
          }
          if (a >= 42 && a <= 64)              //Modifica la luz del pixel nmero 42 a 64
          {         
            pixels.setPixelColor (a, pixels.Color(0,255,255));
          }   
          pixels.show();
        }   
   }
   Serial.println(hallState);                 //Imprime los resultados recibidos por el sensor
}

Schematics

Sketch
The temperature sensor is used as a representation of the Hall effect sensor.
Sketch bb jls8bpqhbj

Comments

Similar projects you might like

How to Configure NeoPixels Using Vixen Lights and Arduino

Project tutorial by Victor Aguilar

  • 26,489 views
  • 33 comments
  • 51 respects

Smart Bicycle

Project showcase by Vikram Tokala

  • 6,090 views
  • 0 comments
  • 24 respects

Simplest Way for Voice Recognition Project Using c#toarduino

Project tutorial by Jalal_Mansoori

  • 13,818 views
  • 30 comments
  • 58 respects

Control Home Appliances Through Web Or Mobile

Project tutorial by Team Gadget Programmers

  • 10,013 views
  • 4 comments
  • 22 respects

Morse Code Communication Using Arduino

Project tutorial by Jalal_Mansoori

  • 7,719 views
  • 17 comments
  • 30 respects

Remote Controlled Smart Lamp

Project tutorial by gadget programmers

  • 5,050 views
  • 2 comments
  • 16 respects
Add projectSign up / Login