Ir al contenido principal

Sensor magnetico KY-003 de efecto Hall


El módulo sensor KY-003 de efecto Hall

El módulo magnético KY-003 es un sensor capaz de percibir un campo magnético y generar una señal en alto. Esto permite dar una señal de ON para cualquier sistema (1 o 0). Por ejemplo, un contador de revoluciones para una rueda de una bicicleta, estas suelen utilizar este método, ya que  es muy básico y fácil de instalar.


Funcionamiento

El sensor KY-003 utiliza el efecto Hall para detectar la presencia de un campo magnético. Y para comprender este sensor necesitamos saber que es el efecto Hall.
Pero ¿cómo se aprovecha el sensor del efecto Hall? Y más importante, ¿qué es el efecto Hall?
Cuando las cargas se mueven en un campo magnético experimentan una fuerza perpendicular a su movimiento, entonces si estas cargas se desplazan por un alambre conductor, serán impulsadas hacia un lado del alambre. En ese momento se produce una separación de carga en el alambre, y esto se denomina efecto Hall que nos permite determinar el signo de la carga en el portador y el número de portadores por unidad de volumen de este conductor.

Ahora que ya sabemos que es el efecto Hall veremos las características técnicas de este sensor.

Características


  • Voltaje de hasta 5V
  • Temperatura de funcionamiento de -25 °C a 85 °C
  • Dimensiones 18,5mm x 15mm
  • Consumo de 3mA reposo y 8mA activo

Precio

El sensor KY-003 tiene dos versiones, una que nos llega con una PCB con resistencia y un LED y otra versión más económica que solo contiene el sensor con sus tres pines.

  •  KY-003 con resistencia LED y PCB se encuentra en algunas tiendas online con un precio que vería de los 0,60€ hasta los 4€.
  • Y si queremos el sensor KY-003 básico cada unidad de sensor que ronda un precio de 1,40€ hasta 3€. Aunque existen lotes de 10uds con un precio que ronda los 3-5€


Materiales

  • Protoboard
  • 5 cables para Arduino con pines macho
  • Arduino
  • Sensor KY-003
  • Cable de alimentación
  • LED
  • Resistencia de 1KOhms


Montaje


Pondremos a negativo con GND, el pin central es el positivo y lo conectaremos a 5V, y el pin S corresponde a la señal, que lo pondremos en el pin digital  2.
Luego colocaremos la resistencia del led en el ánodo con el pin digital 4 y el cátodo a GND
Podemos ver el resultado en esta imagen:


Código

El código que vamos a utilizar provoca que el LED quede anclado con la última señal recibida.

int LED =4;            //Pin digital del LED
int SENSOR = 2;        //Pin digital de Señal del sensor
int val = 0;           //Valor de inicio
int state = 0;         //0 LED apagado y 1 encendido
int old_val = 0;       //recordar valor antiguo de val

void setup(){             //definimos las variables de entrada y salida
  pinMode(LED, OUTPUT);   //establecemos el pin de LED que es el D4 como señal de salida
  pinMode(SENSOR, INPUT); // y la señal del sensor como entrada
}

void loop(){    // bucle 

  val= digitalRead(SENSOR); //leemos estado de la señal de sensor
  if((val == HIGH) && (old_val == LOW)){  
    state=1-state;
    delay(10);
  }
  old_val = val;            //antiguo estado guardado
  if (state==1){
    digitalWrite(LED,HIGH); //encendemos el LED
  }
  else{
    digitalWrite(LED,LOW);  //apagamos el LED
  }
} 


Esto nos permite encender y apagar nuestro LED a nuestro parecer utilizando el sensor KY-003 como un interruptor. Cada vez que acerquemos un elemento magnético al sensor, el sensor enviará una señal y podremos encender o apagar el LED

Comentarios