Lectura del sensor

Como indicamos anteriormente, lo primero que debemos hacer para medir el campo magnético con el sensor de efecto Hall es determinar el valor que lee el sensor cuando no hay ningún campo magnético presente. Para ello podemos usar el programa básico de lectura analógica de datos que utilizamos con otros sensores analógicos, como el sensor de temperatura LM35 o el sensor de llama (“Lectura de un sensor con salida analógica”):

void setup() {
  Serial.begin(9600);
}

void loop() {
  int sensorValue = analogRead(0);
  Serial.println(sensorValue);
  delay(100);
}

Subimos este programa a la placa Arduino y, con el pin de datos del sensor conectado al pin A0 del Arduino, leemos por el monitor serie los valores detectados por el sensor, que tendremos situado lejos de cualquier posible fuente de campo magnético. En nuestro caso hemos obtenido la siguiente lectura:

Es decir, en ausencia de campos magnéticos nuestro sensor da una lectura analógica de 550 (si se quiere, este valor se puede modificar utilizando el potenciómetro del módulo).

Para comprobar que el sensor funciona como esperamos, prueba a modificar los datos medidos por el sensor: acerca y aleja el sensor a un imán e invierte la polaridad del imán para ver cómo cambian los valores. Pero esta vez, en lugar de leer los datos por el monitor serie vamos a representarlos gráficamente. Para ello, una vez subido el programa a la placa abrimos el plotter serie (en Tools > Serial Plotter):

y nos encontramos con una representación gráfica que nos muestra, a tiempo real, la lectura del sensor en función del campo magnético presente:

En el primer tramo hemos tomado medidas sin campo magnético, obteniendo un valor de 550. A continuación hemos acercado un imán al sensor, con lo que el valor medido disminuyó. Posteriormente hemos invertido la polaridad del imán, con lo que esta vez, como era de esperar, el valor aumentó.

Last updated