🧲 Tutorial: Sensor Magnético con Arduino Mega 2560
📘 Introducción
En este proyecto se implementa un sensor magnético utilizando un kit de Arduino de 37 módulos. El objetivo es detectar variaciones en el campo magnético mediante una lectura analógica y activar un LED como indicador visual.
El sistema está diseñado para ser sencillo, permitiendo que cualquier persona, incluso sin experiencia previa, pueda montarlo y comprender su funcionamiento.
🧰 Lista de materiales
- Arduino Mega 2560
- Sensor magnético (módulo con pines GND, VCC, A0, DO)
- LED
- Resistencia de 220Ω
- Protoboard
- Cables jumper (macho-macho)
- Cable USB para alimentación
⚙️ Montaje del circuito
El sensor dispone de 4 pines, pero en este montaje solo se utilizarán 3:
- GND → Tierra
- VCC → Alimentación (5V)
- A0 → Salida analógica
🔌 Conexiones
- Sensor magnético
- GND → GND del Arduino
- VCC → 5V del Arduino
- A0 → Pin analógico A0 del Arduino
- LED
- Ánodo (pata larga) → Pin digital 13
- Cátodo (pata corta) → Resistencia → GND
🔍 Explicación del funcionamiento
El sensor magnético detecta cambios en el campo magnético y envía una señal analógica al Arduino a través del pin A0.
- Cuando hay presencia de un imán, el valor leído cambia.
- El Arduino interpreta este valor.
- Si supera un umbral definido, el LED se activa intermitentemente.
Esto permite visualizar fácilmente cuándo el sensor detecta un campo magnético.
⚠️ Posibles errores y soluciones
❌ El LED no enciende
- Revisar polaridad del LED
- Verificar conexión al pin 13
- Comprobar resistencia
❌ El sensor no detecta nada
- Verificar conexión de A0
- Confirmar alimentación (5V y GND)
- Asegurarse de que el imán está lo suficientemente cerca
❌ Lecturas inestables
- Revisar conexiones sueltas
- Evitar interferencias externas
- Añadir un pequeño retardo en el código
💻 Código del programa
const int sensorPin = A0;
const int ledPin = 13;int valorSensor = 0;
int umbral = 500;void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}void loop() {
valorSensor = analogRead(sensorPin);
Serial.println(valorSensor); if (valorSensor > umbral) {
digitalWrite(ledPin, HIGH);
delay(500); // intervalo
digitalWrite(ledPin, LOW);
delay(500); // intervalo
} else {
digitalWrite(ledPin, LOW);
}
}
🧠 Conclusión
Este proyecto permite comprender conceptos clave como:
- Lectura analógica en Arduino
- Uso de sensores
- Control de salidas digitales
- Interpretación de señales
Es una base fundamental para proyectos más avanzados de automatización y robótica.
🖼️ Sobre el diagrama de conexiones
Al sensor
Pin A0 : al pin analógico 0.
Pin G : a tierra (GND)
Pin + : al voltaje (5V)
A la protoboat
GND a una parte de la resistencia.
La otra parte de la resistencia al ánodo del LED.
La pata del cátodo al pin digital 13
Etiqueta:Arduino IDE, Arduino Mega 2560, ciencia, ies monterroso, sensor de imán, steam, tic

