Controlador para Soldador Hakko 907 – Fuente DIY Arduino y Pantalla LED
Componentes y materiales
- Soldador Hakko 907 (1 ud.)
- Fuente de alimentación 24 V (1 ud.)
- Convertidor DC-DC (1 ud.)
- Arduino Nano R3 (1 ud.)
- Controlador de matriz LED MAX7219 (1 ud.)
- Condensador 10 µF (1 ud.)
- Condensador 100 nF (4 uds.)
- Zumbador (1 ud.)
- Resistencia 50 kΩ (1 ud.)
- Resistencia 1 kΩ (1 ud.)
- Resistencia 100 Ω (2 uds.)
- Resistencia 10 kΩ (1 ud.)
- Resistencia 2,21 kΩ (1 ud.)
- Transistor MOSFET IRFZ44N (1 ud.)
- Encoder rotatorio con pulsador (1 ud.)
- Barra LED con 10 LEDs rojos (1 ud.)
- Indicador LED de 7 segmentos (1 ud.)
- Núcleo de ferrita (1 ud.)
- Diodo 1N5408 (1 ud.)
- Conector aviación 5 pines GX16-5 (1 ud.)
- Cables Dupont hembra-hembra (1 ud.)
Herramientas necesarias
- Soldador genérico
Software y servicios online
- Arduino IDE
Sobre el proyecto
Descargo de responsabilidad
Esta es la segunda versión del software del controlador. Se corrigieron algunos errores e implementó un nuevo menú. Este controlador ya no recibe soporte. Para quien vaya a construir su propio controlador de soldadura desde cero, se recomienda encarecidamente construir la otra versión del controlador de soldadura disponible aquí. Si has construido el controlador según la primera versión de este artículo, actualiza el firmware. Será necesario repetir el procedimiento de ajuste tras la actualización.
La idea inicial
Al buscar proyectos interesantes en Internet, me topé con un proyecto de estación de soldadura casera que me llamó mucho la atención. Era un proyecto no demasiado complicado, bien documentado y muy útil. Yo usaba un soldador genérico sin control y no podía imaginar la diferencia. Así que surgió la idea de crear mi propio controlador para probarlo.
El primer problema fue el conector del soldador: era tan poco común que no encontré la hembra correspondiente, así que usé otro par de conectores que se ajustaban a las características del soldador. Ese conector es el enchufe de aviación GX16-5 que aparece en la lista de componentes. Una vez recibidos todos los componentes, pude construir mi controlador.
Características principales
- Control PID para mantener la temperatura del soldador. El soldador alcanza la temperatura en ~30 segundos y la mantiene dentro de ±3 °C.
- El PID reacciona rápido ante uso intensivo, aumentando la potencia suministrada al instante.
- Dos modos de trabajo: mantenimiento de temperatura y mantenimiento de potencia.
- Encoder rotatorio acelerado: giro lento cambia 1 °C, giro rápido cambia 5 °C.
- La temperatura se guarda en la EEPROM del Arduino tras cada uso si se modificó.
- Se guardan en EEPROM dos ajustes: brillo de pantalla (0–15) y unidades (°C/°F).
- Uso de buffer circular en EEPROM para prolongar su vida útil.
- Modo de calibración para ajustar la resistencia variable y calibrar la temperatura.
Menú del controlador
El controlador tiene varios modos:
- Modo espera (standby)
- Modo trabajo principal (mantener temperatura)
- Modo potencia (mantener potencia suministrada)
- Modo configuración
- Modo ajuste (calibración)
Modo espera
Al encender, entra en espera. El soldador está apagado y muestra «OFF». A veces muestra la temperatura objetivo (símbolo «t.» en el dígito izquierdo). Se ajusta girando el encoder. Si el soldador se usó antes, la barra LED anima el enfriamiento; cuando está frío muestra «C0Ld».
Modo trabajo principal
Pulsando ligeramente el encoder se enciende el soldador. El controlador mantiene la temperatura cerca del valor objetivo. Girando el encoder se cambia la temperatura. La pantalla muestra la temperatura objetivo («t.») o la real. La barra LED indica la potencia suministrada. Pulsar ligeramente el encoder vuelve a espera.
Modo potencia
Pulsación larga en modo trabajo entra en modo potencia. Se ajusta manualmente la potencia girando el encoder. Pantalla muestra temperatura del soldador, barra LED muestra potencia. Pulsación larga vuelve al modo trabajo.
Modo configuración
Pulsación larga en espera entra en configuración. 5 opciones:
- Unidades de temperatura («Un. C/F»)
- Brillo de pantalla («br. [0-15]»)
- Calibración del soldador («tunE»)
- Guardar cambios («APLy»)
- Cancelar cambios («CACL»)
Girar el encoder selecciona opción; pulsación corta entra a editar; pulsación corta de nuevo vuelve al menú. Pulsación larga guarda en EEPROM y vuelve a espera. También se guarda pulsando «Apply». Esperar 30 s o elegir «cancel» descarta cambios.
Cambio clave en la lectura del sensor
Mi mango Hakko 907 usa termistor (no termopar). El esquema de lectura debe adaptarse:

El termistor del Hakko 907 tiene ~50 Ω en frío y ~200 Ω a 400 °C. Otros mangos pueden variar, así que usé una resistencia variable para ajustar el amplificador LM358N. Ajuste: con el soldador caliente, la tensión de salida debe ser ~4 V (lectura A0 ≈ 700).
Nota v2: El LM358N no es muy preciso; las lecturas fluctúan. Para nuevos diseños se recomienda otro hardware o amplificadores más precisos (AD822, LT1013, LMC6462).
El modo «tune» simplifica la calibración.
Modo Tune (calibración)
Se necesita termómetro externo.
Se asume rango 180–400 °C (modificable en constantes del código). Menú 5 items:
- Ajuste temperatura alta (cuadro arriba en dígito izquierdo)
- Ajuste temperatura baja (cuadro abajo en dígito izquierdo)
- Valores por defecto a EEPROM («dEFt»)
- Guardar calibración («APLy»)
- Volver sin cambios («CACL»)
Los números en los dos primeros items son lecturas internas (0–1024) para 400 °C y 180 °C. Inicialmente a cero.
- Activar modo tune. Ajustar potencia al máximo para calentar rápido, luego reducir para mantener 400 °C (verificar con termómetro externo).
- Girar la resistencia variable hasta leer ~700. Asegurar que no sea el máximo: subir a 730–750 y bajar a 700. Así el controlador puede medir por encima del máximo.
- Pulsar encoder ligeramente. Ahora ajustar mínimo 180 °C: reducir potencia para mantener 180 °C. Pulsación larga o «APLy» guarda las lecturas internas para 400 y 180 °C. Esos datos convierten lecturas internas a °C/°F.
Cambio menor en el calentador
Un amigo sugirió añadir inductancia para limitar picos de corriente al activar el MOSFET, protegiendo los condensadores de la fuente.

L1: núcleo de ferrita ~2 cm, 12 vueltas de hilo 1 mm. Diodo 1N5408 descarga la inductancia al apagar el MOSFET. Puede sustituirse por hilo directo si no se desea bobinar.
Conclusión
Es un placer usar un soldador controlado: calienta rápido y mantiene la temperatura adecuada.

Código
Código fuente del controlador
Esquemáticos
Proceso de manufactura
- Mando USB para juegos DIY con Arduino – Construye tu propio gamepad de alto rendimiento
- Controlador DIY para soldador 862D+ — Precisión y fiabilidad
- Integración MIDI para Órganos Digitales: Componentes y Guía de Configuración
- Controlador doméstico Arduino con Alexa: Automatización inteligente simplificada
- Teclador Automático para Radiogoniometría: Precisión, Facilidad y Fiabilidad
- Controlador de Respiración Arduino Asequible con Integración USB-MIDI
- Controlador Joystick Preciso para Robot MeArm - Grabar y Reproducir Coordenadas con Arduino Uno
- Proceso FINEX: Producción Avanzada de Hierro Líquido con Finos de Mineral y Carbón No Coquizable
- Cómo elegir el hierro fundido adecuado para mecanizado de precisión
- Componentes Invar 36: Materiales, Propiedades y Compra Fiable
- Pruebas exhaustivas de UL para componentes plásticos resistentes a llama